Прежде всего, эта история основана на Стивене Кертисе -33 Основы, которые должен знать каждый разработчик Javascript, и вы можете прочитать ее здесь. Поэтому я решил изучить и объяснить эти концепции одну за другой.
№ 2. Примитивные значения
Числа
Строки
Логические значения
Null
Неопределенные
Символы
Я собираюсь объяснить эти типы, кроме символов. если вы хотите узнать о типе символов, вы можете проверить это здесь.
Числа
В отличие от других языков, Javascript имеет только один тип числа. Он включает не только такие числа, как 1 или 1,2, но также включает NaN и Infinity.
Давайте проверим то, что я объяснил, на примере ниже.
console.log(‘1>>>’, typeof 1); console.log(‘1.2>>>’, typeof 1.2); console.log(‘Infinity>>>’, typeof Infinity); console.log(‘NaN>>>’, typeof NaN); console.log(“‘1’>>>”, typeof ‘1’);
Как видите, все, кроме «1», является числовым типом.
Тогда что такое Infinity и NaN??
console.log(‘1 / 0 >>>’, 1 / 0); console.log(“1 * ‘d’>>>”, 1 * ‘d’);
Деление числа на ноль приводит к бесконечности, а вычисление числа со строкой приводит к NaN, что является сокращением от Not a Number.
Я думаю, интересно, что Not a Number — это числовой тип. Разве не так??
Струны
Строки — это буквальные значения в Javascript.
console.log(typeof ‘foo’); console.log(typeof “foo”); console.log(typeof `foo`);
Javascript неявно преобразует другие типы значений в строку, объединяя их.
console.log(‘foo’ + 77); -> console.log(‘foo77’); console.log(‘foo’ + { name: ‘medium’ }); -> console.log(‘foo{ name: ‘medium’ }’);
Булевы значения
Логическое значение представляет собой логический объект и может иметь два значения: true
и false
.
if (undefined) console.log(‘hi’); if (null) console.log(‘hi’); if (‘’) console.log(‘hi’); if (0) console.log(‘hi’); if (NaN) console.log(‘hi’); if (false) console.log(‘hi’);
Если вы передаете undefined, null, пустую строку, 0, NaN в условный оператор, они считаются ложными, поскольку являются ложным значением.
(истинным значением является все, кроме ложного значения)
В результате, ничего не логируется в консоли.
Нуль против Неопределенного
Оба определенно являются ложными значениями, но они не одного и того же типа.
Нулевые типы определяются как несуществующие.
С другой стороны, неопределенные типы еще не определены.
let medium; console.log(medium); medium = null; console.log(medium);
Если мы зарегистрируем носитель перед инициализацией, в консоли будет зарегистрировано значение undefined, поскольку оно еще не определено.
Только после определения носителя как нулевого, в консоли будет зарегистрировано значение null.
undefined — еще не определено, не имеет значения
null — определено как несуществующее, имеет значение (null)
Заключение
Сегодня мы узнали о 5 примитивных типах.
Определенно, знание этой концепции не улучшит ваши навыки javascript в мгновение ока.
Но я думаю, что эти базовые знания помогут вам стать профессиональным разработчиком.
> Надеюсь, вы, ребята, чему-то научились из этой истории!!