- Опишите одну вещь, которую вы узнали сегодня на уроке.
Я узнал, что такое переменная и типы данных.
В JavaScript переменная — это место, где могут храниться значения, чтобы мы могли сравнивать, изменять, ссылаться и/или возвращать их позже в нашей программе. Эти «места» называются переменными. Мне нравится думать о них как о ведрах, в которых хранятся данные. Когда мы программируем, мы просто сравниваем биты данных и манипулируем ими во многих других блоках данных. В JS у нас есть три разных ключевых слова для объявления переменной. Ключевые слова:
var
,const
иlet
. Мы можем назвать переменную как угодно, если она объявлена с ключевым словомvar
.
Когда дело доходит до типов данных, это просто означает, что данные могут иметь разные типы. Так же, как транспортные средства бывают разных типов: седан, грузовик, мотоцикл. Вот и все, что это значит.
Таким образом, всего 7 типов данных в JavaScript.
Примитивные (или самые основные) типы данных:
логическое значение —
true
илиfalse
. Логическое значение может быть только одним из этих двух значений. Как свет. Это включено или выключено, правда или ложь? 0 или 1. Звучит знакомо?
Не определено —
undefined
— это именно то, что написано. Но загвоздка в том, что мы, как программисты, не можем его использовать. Он зарезервирован только для компьютера. Это значение по умолчанию в JavaScript. Причина этого в том, что компьютер может дать нам обратную связь, когда у нас есть ошибочный код. Проще говоря, не назначайтеundefined
. В ближайшие месяцы компьютер сделает это за вас.
Null – значение
null
можно использовать. Это точно так же, какundefined
, но зарезервировано для назначения людьми, а не компьютером.
Число —
1, 3, 4.4, 42, 1.75
, как целые числа, так и числа с плавающей запятой (десятичные) относятся к типу Число.
NaN, который технически не является примитивным типом данных.
NaN
или Не число — одна из самых странных особенностей JavaScript. А пока поместите его в ту же категорию, что иundefined
. Это для компьютера, а не для вас.
Это полезно для отладки. Если вы видите
NaN
в своем коде, это, вероятно, признак того, что вы пытаетесь выполнить арифметические действия с чем-то нечисловым, например со строкой.
Причина, по которой вы увидите
NaN
, заключается в том, что вы пытаетесь выполнить арифметические действия с фрагментом данных, отличным от Числа, а JS пытается преобразовать эти логические значения или строки в числа. Если это невозможно, вы получите либо ошибку, либоNaN
(это зависит от контекста). Мы поговорим об этом позже.
Строка —
'hello world', '...', "Sam I Am", "256"
являются примерами строк. Слова и символы между одинарными, '' или двойными кавычками'' считаются строками. Обратите внимание, что между кавычками стоит число — в данном контексте это строка.
2. Какие инструменты и методы вы используете для отладки кода JavaScript?
Откажитесь от отладки console.log раз и навсегда! Каждый должен научиться использовать точки останова для отладки кода в инструментах разработчика Chrome. Просто открыв DevTools и просмотрев свой JS-код в Chrome, вы можете легко увидеть, что у вас есть. Вернитесь к демонстрации и откройте DevTools, нажав Command+Option+I (Mac) или Control+Shift+I ( Виндовс, Линукс).
Ссылка: 1) https://codeburst.io/learn-how-to-debug-javascript-with-chrome-devtools-9514c58479db
3. В чем разница между переменными, созданными с помощью let, var или const?
вар:
С «var» есть только два типа области видимости для переменной. Существует глобальная область видимости, в которую мы поместим переменную, если определим переменную с «var» вне какой-либо функции. И затем есть область действия для переменной, определенной внутри функции. Но нет блочной области, и это является источником путаницы и случайных ошибок.
Поскольку объявления переменных (и объявления вообще) обрабатываются до выполнения любого кода, объявление переменной в любом месте кода эквивалентно объявлению ее в начале. Это также означает, что переменная может казаться используемой до того, как она будет объявлена. Такое поведение называется «подъемом», так как кажется, что объявление переменной перемещается в начало функции или глобального кода.
позволить:
let позволяет нам определять переменные. Ранее мы объявляли наши переменные, используя ключевое слово «var». Но у него есть некоторые ограничения, когда дело доходит до области действия, поскольку он не предлагает область действия блока. Но теперь, используя ключевое слово «let», мы можем объявить действительно переменные с областью действия блока.
Повторное объявление одной и той же переменной в пределах одной и той же функции или блока вызывает TypeError.
В ECMAScript 6 let поднимет переменную в начало блока. Однако обращение к переменной в блоке перед объявлением переменной приводит к ошибке ReferenceError. Переменная находится во временной мертвой зоне с начала блока до обработки объявления.
константа:
Мы будем использовать ключевое слово «const» для создания и инициализации переменной только для чтения, которая будет содержать постоянное значение и что-то, что мы никогда не сможем изменить. В ES6 «const» будет иметь блочную область видимости, как и ключевое слово «let». Значение константы не может измениться путем переназначения и не может быть повторно объявлено. Константа не может делиться своим именем с функцией или переменной в той же области.
Лично мне нравится определение MDN для const:
Объявление const создает доступную только для чтения ссылку на значение. Это не означает, что значение, которое он содержит, является неизменным, просто идентификатор переменной нельзя переназначить.
Ссылка: 1) https://medium.com/infancyit/difference-between-var-let-and-const-in-es6-16a08d74b8b2
2) https://dev.to/sarah_chima/var-let-and-const--whats-the-difference-69e