Frontend Interview - собеседования по Javanoscript / Html / Css – Telegram
Frontend Interview - собеседования по Javanoscript / Html / Css
11.4K subscribers
2.1K photos
117 videos
320 files
531 links
Канал для подготовки к собеседованиям по фронтенду

Админ, сотрудничество, реклама: @seniorFrontPromo, @maria_seniorfront

Купить рекламу: https://telega.in/c/frontendinterview

Канал в реестре РКН:
https://rknn.link/su
Download Telegram
Что из перечисленного является Function Expression?
Anonymous Quiz
24%
function foo() {}
58%
var foo = function() {}
17%
() => {}
Как React работает с DOM?

Для того, чтобы сделать DOM быстрее, React использует виртуальный DOM, который, по сути, является представлением DOM-дерева в JavaScript. Когда возникает необходимость чтения или записи в DOM, используется данное представление. Затем виртуальный DOM пытается определить наиболее эффективный способ обновления браузерного DOM.

В отличие от DOM-элементов браузера, создание элементов в React обходится гораздо дешевле. React-DOM заботится об обновлении обычного DOM для совпадения с React-элементами. Это объясняется тем, что JavaScript очень быстрый, и хранение DOM-дерева в нем ускоряет модификацию последнего.
Выживет ли он?

Герою необходимо пробраться в замок, окруженный драконами. На каждого дракона нужно по 2 пули. Напишите функцию, которая принимает количество доступных пуль и атакующих драконов и возвращает результат, сможет ли герой справиться.

1 аргумент - пули
2 аргумент - драконы

Примеры:
 hero(10, 5) =>  true
hero(7, 4) => false
Какой из перечисленных псевдо-классов не относится к элементу input?
Anonymous Quiz
6%
:required
4%
:valid
52%
:visited
5%
:invalid
13%
:optional
20%
:out-of-range
Что такое REACT компоненты?

Компоненты - это строительные блоки любого React-приложения. Как правило, приложение на React состоит из множества компонентов. Проще говоря, компонент - это JavaScript-класс или функция, опционально принимающие так называемые свойства (props) и возвращающие элемент React, описывающий, как должна выглядеть определенная часть UI.

React-приложение состоит из множества компонентов, каждый из которых отвечает за отрисовку (рендеринг, render) небольшой, переиспользуемой (имеющей возможность повторного использования) части HTML. Компоненты могут вкладываться в другие компоненты, что обеспечивает возможность создания сложных приложений, состоящих из элементарных "кирпичиков". Также компоненты могут поддерживать внутреннее состояние - например, компонент TabList может хранить переменную, значением которой является открытая вкладка.

Пример
class Welcome extends React.Component {
render() {
return <h1>Привет, народ!</h1>
}
}
Всегда ли у функции дожно быть имя?
Anonymous Quiz
11%
Да
89%
Нет
Назовите преимущества и ограничения React

Преимущества
1. Использование виртуального DOM повышает производительность

2. JSX (JavaScript и XML) делает код компонентов/блоков более читаемым.

3. Связывание данных в React предоставляет хорошие условия для создания динамичных приложений

4. Быстрый рендеринг. Использование встроенных методов для минимизации количества операций с DOM помогает оптимизировать и ускорить процесс обновления

5. Тестируемость. Имеются отличные встроенные инструменты для тестирования и отладки кода

Ограничения
1. Кривая обучения. Будучи библиотекой, а не полноценным фреймворком, он требует глубоких знаний по внедрению UI в MVC фреймворки

2. Одним из недостатков React также является ориентированность на слой представления. Для решения проблем "Представления" требуется поиск подходящей "Модели" и "Контроллера"

3. Разработка приложения без использования изоморфного подхода приводит к проблемам с индексацией приложения поисковыми роботами
Что такое JSX и как он помогает разрабатывать приложения?

JSX позволяет создавать HTML-элементы прямо в JavaScript и помещать их в DOM без использования таких методов, как createElement() или appendChild(). JSX преобразует HTML-теги в элементы React. React использует JSX для шаблонизации вместо обычного JavaScript. Использовать JSX не обязательно, однако он предоставляет несколько преимуществ:

1. Он быстрее благодаря оптимизации во время компиляции кода в JavaScript
2. Он также является "типобезопасным", большинство ошибок перехватываются во время компиляции
3. Он позволяет легче и быстрее создавать шаблоны
Пример

 import React from 'react'

class App extends React.Component {
render() {
return (
<div>
Привет, народ!
</div>
)
}
}
export default App
Что выведется в консоль?
Anonymous Quiz
43%
{color: "red"}
57%
null
Дэвид Кроудер. «Создание веб-сайта для чайников»

Если вы никогда не занимались веб-дизайном, но хотели бы создать свой ресурс т в Интернете, то этот самоучитель поможет вам научиться разрабатывать вполне профессиональные сайты.

Вы найдете практические советы и проверенные фрагменты HTML, научитесь добавлять на веб-страницы изображения, видео- и аудиоклипы, красивые кнопки и множество других элементов.

Сможете применять базовые элементы HTML и редакторы различных типов.
Структурируете подачу материала и обеспечите удобство чтения текстов с помощью таблиц и фреймов, применяя современные технологии, например каскадные таблицы стилей (CSS).

Сделаете свой сайт привлекательным. Научитесь размещать на сайте красивые кнопки, добавлять видео- и аудиоклипы.

Узнаете, как создать интернет-магазин, включить сайт в индексные базы поисковых систем и обменяться ссылками с другими сайтами.
99 бутылок пива

Напишите функцию, которая вернет текст песни 99 бутылок пива как массив строк. То есть каждая строка песни должна быть элементом массива.
Алекс Бэнкс, Ева Порселло. «React и Redux. Функциональная веб-разработка»

Хотите научиться писать эффективные пользовательские интерфейсы при помощи React? Тогда вы нашли нужную книгу. Авторы расскажут, как создавать пользовательские интерфейсы при помощи этой компактной библиотеки и писать сайты, на которых можно обрабатывать огромные объемы данных без перезагрузки страниц.

Также вы изучите новейшие возможности стандарта ECMAScript и функционального программирования.
Что такое webpack?

Вебпак — это сборщик модулей. Он анализирует модули приложения, создает граф зависимостей, затем собирает модули в правильном порядке в один или более бандл (bundle), на который может ссылаться файл «index.html».

Обычно, при создании приложения на JavaScript, код разделяется на несколько частей (модулей). Затем в файле «index.html» необходимо указать ссылку на каждый скрипт.

Это не только утомительно, но и подвержено ошибкам. Важно не только не забыть про какой-нибудь скрипт, но и расположить их в правильном порядке. Если загрузить скрипт, зависящий от React, до загрузки самого React, приложение сломается. Вебпак решает эти задачи. Не нужно беспокоиться о последовательном включении всех скриптов.

Cбор модулей является лишь одним из аспектов работы вебпака. При необходимости можно заставить вебпак осуществить некоторые преобразования модулей перед их добавлением в бандл. Например, преобразование SASS/LESS в обычный CSS, или современного JavaScript в ES5 для старых браузеров.
Каково значение переменной discount?
Anonymous Quiz
11%
true
80%
false
8%
undefined
1%
null
Что такое ReactDOM?

ReactDOM - это пакет, предоставляющий специфичные для браузера методы, которые могут быть использованы на верхнем уровне приложения для эффективного управления DOM-элементами, имеющимися на странице. ReactDOM имеет следующие методы:

 1. render()
2. findDOMNode()
3. unmountComponentAtNode()
4. hydrate()
5. createPortal() и др.

До версии 0.14 ReactDOM был частью React. Одной из главных причин разделения React и ReactDOM было появление React Native. React содержит функционал, используемый в веб- и мобильных приложениях. Функционал ReactDOM используется только в веб-приложениях.

ReactDOM использует наблюдаемые объекты (observables), которые предоставляют эффективный способ работы с DOM. ReactDOM может использоваться как на стороне клиента, так и на стороне сервера.

Пример

 import React from 'react'
import ReactDOM from 'react-dom'
import App from './App/App'

ReactDOM.render(
<React.StrictMode>
<App />
</React.StrictMode>,
document.getElementById('root')
)