Авторский канал о том, как стать программистом, когда вы даже не знаете, что это. Много интересного и для других сфер - планирование, самоконтроль, различные лайфхаки и т.д. Задачи @tasks_frontend Обратная связь @WpdFeedbackBot Сотрудничество @rezvanini
После клика по p будет выведено p и div. В цикле жизни события есть три фазы: захват, цель и всплытие. По умолчанию обработчики событий выполняются на фазе всплытия (если не установлен параметр useCapture в true). Всплытие идет с самого глубокого элемента вверх.
Создать функцию для регистрации новых пользователей. Обязательно проверку на уникальность nickName(он же login). Для этого создаём локальную базу пользователей (берём ее из realtimeDatabase) и с ней сверяемся. Подобную проверку прикрутить к нашей функции на обычный вход пользователей (там проверка соответствия логина и пароля.
Когда в массив добавляется значение, которое выходит за пределы длины массива, JavaScript создает так называемые "пустые ячейки". На самом деле они имеют значения undefined, но в консоли выводятся так:
[1, 2, 3, 7 x empty, 11]
в зависимости от окружения (может отличаться для браузеров, Node, и т.д.).
Ответ: А В JavaScript есть только примитивы и объекты.
Типы примитивов: boolean, null, undefined, bigint, number, string, и symbol. Отличием примитива от объекта является то, что примитивы не имеют свойств или методов. Тем не менее, 'foo'.toUpperCase() преобразуется в 'FOO' и не вызывает TypeError. Это происходит потому, что при попытке получения свойства или метода у примитива (например, строки), JavaScript неявно обернет примитив объектом, используя один из классов-оберток (например, String), а затем сразу же уничтожит обертку после вычисления выражения. Все примитивы кроме null и undefined ведут себя таким образом.