DНЕВНИК web-программиста
2.58K subscribers
214 photos
14 files
560 links
Авторский канал о том, как стать программистом, когда вы даже не знаете, что это.
Много интересного и для других сфер - планирование, самоконтроль, различные лайфхаки и т.д.
Задачи @tasks_frontend
Обратная связь @WpdFeedbackBot
Сотрудничество @rezvanini
Download Telegram
Правильный ответ:

...пожалуй, не буду в этот раз писать правильный ответ, тк почти никто правильно не ответил 😔
Поэтому, рекомендую желающим почитать о всех этих тегах. Eng или Ru
Если вас интересует IT-бизнес, уверен вы видели на youtube канал Точка G (https://www.youtube.com/channel/UC8NEikYv6nEVtW_eR4wLTtw/videos)

Там есть например интервью с интересным разработчиком https://youtu.be/6SMpBMg3_cI, владельцем большой веб-студии https://youtu.be/BRm2FKF3HHo, или крупнейшей криптобиржи https://youtu.be/YbwN1jJEB9U. Реально интервью уже более 100!

И кстати у автора, Олега Артишука, есть еще телеграм канал - @video4it

Рекомендую, подписывайтесь!
Task3.

Теперь на нашу ветку /presence поставить "прослушку". Т.е. когда будет заходить (выходить) новый пользователь, мы выводим (пока в console.log) сообщение. В нем указываем имя этого пользователя и сообщение, что он зашёл в чат (или вышел).

🚀Поехали🚀

#диплом
Task4.

Необходимо создать UserCard - куда будут добавлять вошедшие в чат пользователи и удаляться вышедшие. Т.е. видим кто из пользователей онлайн.
З.Ы. Осталось несколько шагов до бета-версии моего чата!!

🚀Поехали🚀

#диплом
Какой будет результат у данного кода?
[..."Alex"];
Anonymous Poll
46%
["A", "l", "e", "x"]
30%
["Alex"]
17%
[[], "Alex"]
8%
[["A", "l", "e", "x"]]
Правильный ответ:

["A", "l", "e", "x"]
Строка является итерируемой сущностью. Оператор распространения преобразовывает каждый символ в отдельный элемент.

#задача
Task5.

Осталось совсем немного, что бы базовый функционал чата заработал.

5.1. Создаём в базе новую ветку chats в которой будут храниться сообщения пользователей.
Структуру всех веток базы прикреплю к этому сообщению, что бы вам было наглядно.

5.2. Создаем в разметке работу с сообщениями. Добавляем нужные компоненты и "прикручиваем" функционал для добавления сообщений из базы в DOM компоненты.
При этом, сообщение сначала отправляется пользователем в RealTime DataBase, потом мы его отправляем в локальную базу и уже из нее рендерим в DOM.
После этого уже будет рабочий чат. Если будет время - попробую снять видео по этим 5 этапам или хотя бы показать результат и выложить код. Кому это интересно - ставим 👍

🚀Поехали🚀

#диплом
Ответ: А
В JavaScript есть только примитивы и объекты.

Типы примитивов: boolean, null, undefined, bigint, number, string, и symbol.
Отличием примитива от объекта является то, что примитивы не имеют свойств или методов. Тем не менее, 'foo'.toUpperCase() преобразуется в 'FOO' и не вызывает TypeError. Это происходит потому, что при попытке получения свойства или метода у примитива (например, строки), JavaScript неявно обернет примитив объектом, используя один из классов-оберток (например, String), а затем сразу же уничтожит обертку после вычисления выражения. Все примитивы кроме null и undefined ведут себя таким образом.

#задача
​JavaScript

Что будет выведено в консоль?

#задача
Ответ: C

Когда в массив добавляется значение, которое выходит за пределы длины массива, JavaScript создает так называемые "пустые ячейки". На самом деле они имеют значения undefined, но в консоли выводятся так:

[1, 2, 3, 7 x empty, 11]

в зависимости от окружения (может отличаться для браузеров, Node, и т.д.).