Академия кодирования Остина

Опишите одну вещь, которую вы изучаете сегодня на уроке.

Ранее мы научились вызывать свойство объекта, ссылаясь на ключ, используя запись через точку (object.property) или запись в квадратных скобках (object["property"]). Но что, если мы не знаем сразу, какое свойство нужно вернуть? Мы можем использовать запись в квадратных скобках и сохранить входную строку в переменной, затем мы можем назвать переменную как наше свойство, например object[myVariable] . Обратите внимание, переменная не нуждается в кавычках, потому что она хранит строку, которую мы хотим использовать.

Разница между: function Person(){}, var person = Person() и var person = new Person()?

  • function Person(){} просто определяет новую функцию с именем Person. Это будет включать логику функции, но функция еще не будет вызываться или вызываться в программе.
  • var person = Person() вызывает функцию Person, а затем сохраняет возвращаемое значение в переменной с именем person.
  • var person = new Person() создает новый экземпляр объекта, используя функцию Person в качестве шаблона. Затем этот новый объект сохраняется в переменной с именем person.

В чем разница между «атрибутом» и «свойством»?

Атрибуты размещаются в HTML, тогда как свойства распознаются в DOM. Javascript не обязательно может обращаться к атрибутам напрямую, но может обращаться к свойствам через DOM.

Какие языковые конструкции вы используете для перебора свойств объекта и элементов массива?

Циклы — лучший кандидат для циклического перебора свойств объектов и элементов в массиве, поскольку они позволяют разработчику точно определить, как элементы должны повторяться, в каком порядке, а также что следует делать с теми элементами, которые повторяются. Использование цикла foreach() гарантирует, что каждый элемент получит одно и то же действие, так как этот цикл будет автоматически перебирать каждый элемент без необходимости его определения.

Что такое цикл событий?

Цикл событий — это способ Javascript избежать бесконечных циклов путем создания стека событий, который размещает функции в том порядке, в котором они были вызваны, а затем выполняет их в этом порядке.

В чем разница между стеком вызовов и очередью задач?

  • Стек вызовов — это структура, содержащая очередь функций, ожидающих обработки. Когда вызывается новая функция или событие, оно помещается в конец стека вызовов.
  • Очередь задач обрабатывает все сообщения, полученные от веб-API. Как только стек вызовов пуст, возвращается очередь задач.

В чем разница между конструкторами классов ES6 и конструкторами функций ES5?

Классы ES6 отличаются от функций ES5 тем, что каждый экземпляр объекта наследуется от конструктора. Классы ES6 выполняют эту работу по добавлению функций к вновь созданному объекту. Конструкторы функций ES5 должны вызываться с использованием ключевого слова new. Классы ES6 гарантируют, что ключевое слово this относится только к новому создаваемому объекту.