Вчера я впервые присоединился к моб-сессии @ podiihq. И мы обсудили типы данных в Javascript. Я узнал, что есть две разные категории внутри типов данных - так что будьте готовы к просветлению!
Две разные категории:
- Примитивные данные - самый низкий тип данных. Все остальные данные основаны на примитивных данных.
- Сложные данные - для создания сложных данных вам нужны примитивные данные. Другими словами, сложные данные основаны на примитивных данных.
Итак, что включается в простые и сложные данные?
Примитивные данные включают:
Строки - все, что находится внутри одинарных ‘I am a string’
или двойных кавычек “I am also a string”
.
Число - все, что является числом с десятичной дробью или без нее. Это считается числом: 24
, и это также считается числом 24.46
Логическое - True
или False
Не определено. У меня нет лучшего способа объяснить значение undefined, чем показать вам это:
var car; // setting a variable car = undefined; // setting the variable to undefined
Вы можете спросить, почему вы хотите установить для переменной значение undefined? У меня был тот же вопрос, поэтому я спросил sigu. Его ответ заключался в том, что это полезно при выходе пользователя из системы, поскольку вы больше не хотите сохранять какие-либо данные пользователей в хранилище браузера после выхода из системы. Поэтому вы устанавливаете для объекта пользователя в хранилище браузера значение undefined.
Null - одни считают примитивными данными, другие - нет. Я думаю, это может быть потому, что null
считается объектом (который, по-видимому, считается ошибкой в JS, поскольку он должен иметь значение null), а объект , в свою очередь, считается сложные данные. Беспорядочно, беспорядочно. Но в любом случае null
ничего не значит. Таким образом, если вы установите для объекта значение null
, вы в основном его опустошаете.
Итак, что считается сложными данными?
Здесь мы можем использовать оператор typeof
, чтобы узнать, какие существуют сложные данные, и он возвращает 2 типа данных:
- Функция
- Объект
Что, если задуматься, имеет смысл. Функция и объект могут включать любые примитивные данные, но не наоборот. Другими словами, вам нужны примитивные данные для определения функции или объекта.
Надеюсь, это объяснение было полезным! Если в тексте есть опечатки / ошибки, дайте мне знать - я смогу просветить :)