Хочется заметить, что может быть следующая ситуация
var a = [1,2,undefined,3]
и в этом случае не получится проверить через if (a[2] != undeined)
т.к. ключ существует, но значение undefined!
тоже самое и с объектами
a = {b:undefined}
ключ b существует, значение undefined и проверить получится только через in
плюс подобных сервисов, они не делят аудиторию, я могу купить скидку на дарбери и на биглионе, все зависит только от интересного предложения а цены там смешные поэтому у меня уже несколько купленных купонов с разных сервисов.
var a = [1,2,undefined,3]
и в этом случае не получится проверить через if (a[2] != undeined)
т.к. ключ существует, но значение undefined!
тоже самое и с объектами
a = {b:undefined}
ключ b существует, значение undefined и проверить получится только через in