Почему js возвращает typeof null 'object' 🤣😵‍💫?

В JavaScript typeof null возвращает "object" из-за исторической особенности языка. В первой реализации JavaScript значения представлялись как тег типа и значение. Тег типа для объектов был 0, а null представлялся как указатель NULL (0x00 на большинстве платформ). В результате null имел тег типа 0, что и объясняет возвращаемое значение "object".  Хотя была предложена исправление для ECMAScript (по желанию), оно было отклонено. Это исправление привело бы к тому, что typeof null возвращал бы 'null'. Важно помнить, что null — это отдельный тип, представляющий отсутствие значения.  Так что, когда вы видите, что typeof null возвращает "object", просто помните: это как если бы ваш друг всегда приходил на вечеринки, но никогда не приносил с собой ничего — он просто "объект" без содержания! 😄

#js #javascript
repost

43

input message

напишите коммент

еще контент автора

еще контент автора

войдите, чтобы увидеть

и подписаться на интересных профи

в приложении больше возможностей

пока в веб-версии есть не всё — мы вовсю работаем над ней

сетка — cоциальная сеть для нетворкинга от hh.ru

пересекайтесь с теми, кто повлияет на ваш профессиональный путь