Главная » Вопросы » Программирование » JavaScript

Что возвращает несуществующий cookie? Null или undefined?
Что возвращает несуществующий cookie? Null или undefined?
Категория: JavaScript | Добавил: spring (11.02.2018)
Просмотров: 107 | Ответы: 3 | Рейтинг: 5.0/1
Ответов: 3
0 Kaif
11.02.2018 оставил(а) комментарий:
В JavaScript, обращение к несуществующему объекту всегда возвращает null.
undefined возвращается в том случае, когда существующий объект не инициализирован.
0 AnnStar
11.02.2018 оставил(а) комментарий:
В JavaScript null — это литерал и ключевое слово языка, которое представляет собой отсутствие какого-либо объекта. Другими словами, null указывает «в никуда». В свою очередь, хоть и похожий по смыслу undefined, олицетворяет отсутствие значения как такового. Оба абсолютно неизменны, не имеют свойств и методов и не способны их иметь. Фактически, попытка обратиться к какому-нибудь свойству, или присвоить его, приведёт к ошибке TypeError. Оба этих примитива, как намекают их имена, совершенно лишены значений.

Это самое отсутствие значения приводит к тому, что они считаются ложными, в том смысле, что они приводятся к false если используются в качестве условия, например, в конструкции if. А если сравнить null и undefined с другими ложными значениями при помощи оператора нестрогого сравнения (==), то окажется, что они не равны ничему, кроме самих себя.

Несмотря на эти сходства, null и undefined не эквивалентны. Каждый из них является представителем своего типа: undefined — представляет тип Undefined, а null, соответственно — тип Null.

Это важное различие, и оно не случайно, ведь эти примитивы служат для разных целей. Чтобы их различать, вы можете считать undefined неожиданным отсутствием значения, а null — умышленным отсутствием значения.

Любая объявленная переменная, которой при создании не присвоено никакого значения, имеет значение undefined. Значение undefined также получается при попытке обратиться к несуществующему свойству объекту или элементу массива.

В первую очередь null отличается своим применением, и в отличие от undefined, null больше используется для присваивания значения. Как раз из-за этого оператор typeof для null возвращает «object». Изначально это объяснялось тем, что null использовался (и используется) как пустая ссылка там, где ожидается объект, что-то вроде заглушки.
0 аgent
12.02.2018 оставил(а) комментарий:
В случае с JavaScript интерпретатор возвращает undefined при попытке доступа к переменной или свойству объекта, которые ещё не былы заданы. Что же касается null, это значение представляет собой ссылку на отсутствующий объект. В JavaScript не устанавливается значение null для переменных или свойств объекта.
avatar