Опишите одну вещь, которую вы изучаете сегодня на уроке.
Мы узнаем о вложенных массивах внутри объектов или объектах в массивах и о том, как получить к ним доступ позже. Доступ к значениям массива осуществляется с помощью квадратных скобок и порядкового номера (начиная с нуля) между ними (например, myArray[1]). Доступ к значениям объекта также можно получить с помощью квадратных скобок, но вместо порядкового номера мы используем имя ключа в кавычках (например, myObject[‘key1’]). Мы также можем использовать точечную нотацию для значений объекта, которая представляет собой имя объекта, за которым следует точка, и имя ключа (например, myObject.key1). Для объекта с вложенным массивом, который содержит больше объектов, мы просто комбинируем этот синтаксис (например, object1.[0].nestedObject1.myKey).
Разница между: function Person(){}
, var person = Person()
и var person = new Person()
?
Первый пример — это объявление функции с именем «Person». Это создает его в глобальной области видимости, фактически ничего не выполняя. Во втором примере создается переменная, содержащая ссылку на ранее объявленную функцию с именем «Person». Возвращаемое значение этой функции хранится внутри этой переменной. В третьем примере создается новый экземпляр объекта на основе функции Person. Таким образом, переменная (человек) теперь является объектом, а не просто строкой или числом.
В чем разница между "атрибутом" и "свойством"?
Атрибут ссылается на строковое значение внутри элемента, и для этих атрибутов можно вызывать свойства. Они сопоставляются вместе по имени атрибута и связаны друг с другом через DOM, поскольку каждый элемент в DOM является объектом.
Какие языковые конструкции вы используете для перебора свойств объекта и элементов массива?
Я использую циклы для перебора списка элементов, чаще всего цикл for, хотя есть и другие типы на выбор в зависимости от обстоятельств. Существуют также функции более высокого порядка, которые перебирают элементы массива/объекта, такие как forEach(), map() и filter(); функции более высокого порядка могут служить дополнительной цели, чем просто итерация.
Что такое цикл событий?
Цикл, связанный с Node.js, который может выполнять функции, ожидая передачи определенных условий.
В чем разница между стеком вызовов и очередью задач?
Стек вызовов относится к структуре данных, которая отслеживает вызовы функций в скрипте. Всякий раз, когда функция вызывается, она помещается в стек и удаляется, когда функция завершается или возвращает значение. Очередь задач обрабатывает обратные вызовы веб-API.
В чем разница между классом ES6 и конструкторами функций ES5?
ES6 предлагает варианты создания экземпляров объектов с помощью оператора класса. Внутри вы можете определить новый объект и добавить к нему функции.