Рынок труда для инженеров-программистов очень конкурентен, и получение работы может зависеть от того, насколько хорошо вы пройдёте собеседование. В этой серии статей Справочник по собеседованию для инженера-программиста мы предоставим некоторые полезные знания, которые помогут вам подготовиться к следующему собеседованию по разработке программного обеспечения. В сегодняшней статье мы рассмотрим основы JavaScript. Давай начнем!
Подъем
При выполнении кода объявления как переменных, так и функций перемещаются в начало кода, что делает порядок, в котором они написаны, неактуальным. Это означает, что функции можно вызывать до их объявления.
Переменные
var a; // Regular. let c; // Block scoped. const b; // Immutable.
Функции
Функции в JavaScript считаются объектами первого класса, что означает, что они обрабатываются как обычные объекты функционального типа. Их можно создать с помощью встроенного конструктора функций, и существует несколько способов их объявления.
Способ объявления функции может повлиять на то, как она взаимодействует с внешними компонентами, такими как окружающий контекст или объект, которому принадлежит метод, а также на тип вызова, будь то обычный вызов функции, вызов метода или вызов метода. вызов конструктора.
Объявление функции
Функции, объявленные с помощью подъема, доступны сразу после синтаксического анализа, даже до того, как будет выполнен какой-либо код. Объявление функции создает переменную в текущей области, которая равна имени функции, и эта переменная содержит объект функции.
function foo() {} foo();
Используйте его, когда выражение функции не подходит или когда важно, чтобы функция была поднята.
Выражение функции
Не поднимается, доступно только после выполнения присваивания переменной.
// Named let bar = function foo() {}; bar(); foo(); // undefined
Используйте его, когда вы выполняете рекурсию или хотите увидеть имя функции в отладчике.
// Anonymous let foo = function () {}; foo(); let bar = foo(); bar(); // Error: not a function.
Используйте его, когда хотите передать функцию в качестве аргумента другой функции или хотите сформировать замыкание.
Стрелочные функции ES6
Связывает это автоматически.
let foo = () => {};
Используйте это, если вы хотите лексически связать значение this.
Конструктор функций (избегайте этого)
let foo = new Function();
Другой
- Используйте генераторы объявлений функций
function* foo(){}
, когда вы хотите выйти из функции, а затем снова войти в нее. - Используйте генераторы функциональных выражений
let foo = function* [name](){}
, если вы хотите выйти из вложенной функции, а затем снова войти в нее.
Параметры функции и аргументы
Аргумент — это значение, передаваемое параметру.
function foo(bar) { // bar is a parameter console.log(bar); } foo("baz"); // baz is an argument.
Хорошо знать
Правда / Ложь
Строки, содержащие хотя бы одну букву и числа больше нуля, равны truthy
.
console.log(true && "foo"); // foo console.log(true && "foo" && 1); // 1
Заключение (TL;DR)
В заключение, подъем — это функция JavaScript, которая перемещает объявления переменных и функций в начало кода, делая их порядок нерелевантным. Это позволяет вызывать функции до их объявления.
Переменные также могут быть объявлены по-разному, например, с использованием ключевых слов var
, let
или const
.
Функции в JavaScript считаются объектами первого класса и могут быть созданы с помощью встроенного конструктора функций. Способ объявления функции может повлиять на ее взаимодействие с внешними компонентами и тип вызова.
Кроме того, существуют различные типы объявлений функций, такие как объявления функций, выражения функций, стрелочные функции ES6 и конструкторы функций, каждый из которых имеет свои уникальные характеристики и варианты использования.
Параметры и аргументы функции также имеют разные значения, при этом аргумент представляет собой значение, переданное параметру. Также важно отметить, что в JavaScript некоторые значения считаются истинными или ложными, например строки, содержащие хотя бы одну букву и числа больше нуля.
В следующей части мы рассмотрим JavaScript ES6. Следите за обновлениями!
Заключительные слова
Спасибо, что нашли время прочитать эту статью. Если вы нашли это информативным и полезным, пожалуйста, поддержите меня, подписавшись на мою страницу и похлопав ее. Ваше участие побудит меня продолжать создавать для вас ценный контент.
Чтобы перейти на новый уровень, подумайте о том, чтобы стать участником Medium всего за 5 долларов США в месяц. С моей реферальной ссылкой вы получите доступ к огромному количеству знаний от тысяч писателей и присоединитесь к сообществу лидеров мнений. Улучшите свои навыки чтения и письма уже сегодня.