Использую всегда ===, за исключением случаев, когда именно требуется неявное преобразование примитивных типов при сравнении. Я за три равно, короче.
undefined - "поле не объявлено", null - "поле объявлено, но не инициализированно значением". Почувствуйте разницу.
Значение не на undefined лучше проверять через in

Код AS3:
if (something in hash)