Frontend | Вопросы собесов
Сайт: https://easyoffer.ru/ Все каналы: t.me/+xGeAw6ckJ4liYzQy Контакт для рекламы: @sendme_ads
نمایش بیشتر📈 تحلیل کانال تلگرام Frontend | Вопросы собесов
کانال Frontend | Вопросы собесов (@easy_javascript_ru) در بخش زبانی روسی بازیگری فعال است. در حال حاضر جامعه شامل 17 306 مشترک است و جایگاه 7 485 را در دسته فناوری و برنامهها و رتبه 37 823 را در منطقه روسيا دارد.
📊 شاخصهای مخاطب و پویایی
از زمان ایجاد در невідомо، پروژه رشد سریعی داشته و 17 306 مشترک جذب کرده است.
بر اساس آخرین دادهها در تاریخ 07 نوامبر, 2026، کانال فعالیت پایداری دارد. در ۳۰ روز گذشته تغییر اعضا برابر -292 و در ۲۴ ساعت گذشته برابر -16 بوده و همچنان دسترسی گستردهای حفظ شده است.
- وضعیت تأیید: تأیید نشده
- نرخ تعامل (ER): میانگین تعامل مخاطب 6.40% است و در ۲۴ ساعت نخست پس از انتشار، محتوا معمولاً 4.41% واکنش نسبت به کل مشترکان کسب میکند.
- دسترسی پستها: هر پست به طور میانگین 1 107 بازدید دریافت میکند. در اولین روز معمولاً 764 بازدید جمعآوری میشود.
- واکنشها و تعامل: مخاطبان بهطور فعال حمایت میکنند؛ میانگین واکنش به هر پست 4 است.
- علایق موضوعی: محتوا بر موضوعات کلیدی مانند ставь, браузер, html, border, flex تمرکز دارد.
📝 توضیح و سیاست محتوایی
نویسنده این فضا را محل بیان دیدگاههای شخصی توصیف میکند:
“Сайт: https://easyoffer.ru/
Все каналы: t.me/+xGeAw6ckJ4liYzQy
Контакт для рекламы: @sendme_ads”
به لطف بهروزرسانیهای پرتکرار (آخرین داده در تاریخ 08 نوامبر, 2026)، کانال همواره بهروز و دارای دسترسی بالاست. تحلیلها نشان میدهد مخاطبان بهطور فعال با محتوا تعامل دارند و آن را به نقطه اثرگذاری مهم در دسته فناوری و برنامهها تبدیل کردهاند.
document, который представляет весь HTML-документ. Узлы могут быть элементами (<div>, <p>, <a> и т.д.), текстом, комментариями и другими типами.
Пример HTML-документа:
<!DOCTYPE html>
<html>
<head>
<title>Document Object Model</title>
</head>
<body>
<h1>Hello, world!</h1>
<p>This is a paragraph.</p>
</body>
</html>
Структура для этого документа:
document
└── html
├── head
│ └── title
│ └── "Document Object Model"
└── body
├── h1
│ └── "Hello, world!"
└── p
└── "This is a paragraph."
Основные методы и свойства
1️⃣Доступ к элементам:
✅document.getElementById(id): Возвращает элемент по его id.
✅document.getElementsByClassName(className): Возвращает все элементы с указанным классом.
✅document.getElementsByTagName(tagName): Возвращает все элементы с указанным тегом.
✅document.querySelector(selector): Возвращает первый элемент, соответствующий CSS селектору.
✅document.querySelectorAll(selector): Возвращает все элементы, соответствующие CSS селектору.
2️⃣Создание и удаление элементов:
✅document.createElement(tagName): Создает новый элемент.
✅parentElement.appendChild(childElement): Добавляет элемент в конец дочерних элементов родителя.
✅parentElement.removeChild(childElement): Удаляет элемент из дочерних элементов родителя.
3️⃣Изменение содержимого и атрибутов:
✅element.innerHTML: Изменяет или получает HTML-содержимое элемента.
✅element.textContent: Изменяет или получает текстовое содержимое элемента.
✅element.setAttribute(name, value): Устанавливает значение атрибута элемента.
✅element.getAttribute(name): Получает значение атрибута элемента.
Пример:
// Изменение текста заголовка
const header = document.querySelector('h1');
header.textContent = 'Hello, DOM!';
// Добавление нового параграфа
const newParagraph = document.createElement('p');
newParagraph.textContent = 'This is a new paragraph.';
document.body.appendChild(newParagraph);
// Изменение атрибута
const link = document.querySelector('a');
link.setAttribute('href', 'https://www.example.com');
DOM необходим для программного доступа и управления содержимым веб-страницы. Он позволяет изменять текст, структуру, стили и обрабатывать события на странице.
👉 Можно посмотреть Примеры как отвечают люди на этот вопрос, или перейти К списку 1429 вопроса на Frontend разработчика. Ставь 👍 если нравится контент
🔐 База собесов | 🔐 База тестовыхfunction greet(name) {
return `Hello, ${name}!`;
}
console.log(greet('Alice')); // Hello, Alice!
Функция объявляется с помощью ключевого слова function, за которым следуют имя функции, список параметров в круглых скобках и тело функции в фигурных скобках.
2️⃣Function Expression (Функциональное выражение):
const greet = function(name) {
returnни нужны
1️⃣Повтор
};
console.log(greet('Bob')); // Hello, Bob!
Функция создается и присваивается переменной. Такие функции могут быть анонимными (без имени).
3️⃣Arrow Function (Стрелочная функция):
const greet = (name) => {
return Hello, ${name}!;
};
console.log(greet('Carol')); // Hello, Carol!
Стрелочные функции имеют более короткий синтаксис и не имеют своего контекста this.
Вызов функции
Функцию можно вызвать, используя её имя и передавая необходимые аргументы в круглых скобках:
function add(a, b) {
return a + b;
}
console.log(add(2, 3)); // 5
Параметры и аргументы
✅Параметры — это переменные, которые перечислены в круглых скобках при объявлении функции.
✅Аргументы — это значения, которые передаются функции при её вызове.
Возвращаемое значение
Функция может возвращать значение с помощью ключевого слова return. Если return отсутствует, функция возвращает undefined.
function multiply(a, b) {
return a * b;
}
console.log(multiply(4, 5)); // 20
Область видимости
Переменные, объявленные внутри функции, имеют локальную область видимости и недоступны за её пределами:
function scopeExample() {
let localVar = 'I am local';
console.log(localVar); // I am local
}
scopeExample();
console.log(localVar); // ReferenceError: localVar is not defined
Замыкания (Closures)
Функции имеют доступ к переменным из внешних функций благодаря замыканиям:
function outerFunction() {
let outerVar = 'I am outside!';
function innerFunction() {
console.log(outerVar);
}
return innerFunction;
}
const inner = outerFunction();
inner(); // I am outside!
Функция — это блок кода, который можно многократно использовать. Функции помогают делать код структурированным, повторно используемым и более читаемым.
👉 Можно посмотреть Примеры как отвечают люди на этот вопрос, или перейти К списку 1429 вопроса на Frontend разработчика. Ставь 👍 если нравится контент
🔐 База собесов | 🔐 База тестовыхvar, let и const. Они имеют разные особенности и используются в разных ситуациях.
var
Использовался до появления ES6 (ECMAScript 2015) и обладает следующими особенностями:
1️⃣Область видимости: var имеет функциональную область видимости, то есть она видна внутри функции, где была объявлена, или в глобальной области, если объявлена вне функций.
2️⃣Поднятие (hoisting): Объявления с var поднимаются вверх своей области видимости, но присвоение значения происходит в том месте, где оно записано. Это значит, что переменную можно использовать до ее объявления.
3️⃣Повторное объявление: Переменные, объявленные с var, могут быть переобъявлены в пределах одной и той же области видимости.
Пример:
function exampleVar() {
console.log(x); // undefined
var x = 10;
console.log(x); // 10
}
exampleVar();
let
Появился в ES6 и решает многие проблемы, связанные с var:
1️⃣Область видимости: let имеет блочную область видимости, то есть виден только внутри блока {}, в котором объявлен.
2️⃣Поднятие (hoisting): Хотя объявления с let поднимаются, доступ к ним возможен только после строки, где они объявлены (временная мертвая зона).
3️⃣Повторное объявление: Нельзя переобъявить переменную, объявленную с let, в той же области видимости.
Пример:
function exampleLet() {
console.log(y); // ReferenceError: y is not defined
let y = 10;
console.log(y); // 10
}
exampleLet();
const
Также введённый в ES6, используется для объявления констант:
1️⃣Область видимости: Как и let, имеет блочную область видимости.
2️⃣Поднятие (hoisting): Ведет себя аналогично let в плане поднятия и временной мертвой зоны.
3️⃣Изменение значения: Переменная, объявленная с const, должна быть инициализирована при объявлении и её значение нельзя изменить после этого. Однако, если const используется для объявления объекта или массива, можно изменять их содержимое.
Пример:
function exampleConst() {
const z = 10;
console.log(z); // 10
z = 20; // TypeError: Assignment to constant variable.
}
exampleConst();
function exampleConstObject() {
const obj = { key: 'value' };
obj.key = 'new value'; // Изменение допустимо
console.log(obj.key); // 'new value'
}
exampleConstObject();
Когда использовать
✅`var`: Обычно рекомендуется избегать, так как let и const обеспечивают лучшую управляемость кода.
✅`let`: Используется для переменных, которые могут изменяться в процессе выполнения программы.
✅`const`: Используется для значений, которые не будут переназначены. Это помогает предотвратить ошибки и делает код более предсказуемым.
👉 Можно посмотреть Примеры как отвечают люди на этот вопрос, или перейти К списку 1429 вопроса на Frontend разработчика. Ставь 👍 если нравится контент
🔐 База собесов | 🔐 База тестовых== или ===), сравниваются их ссылки, а не содержимое.
const obj1 = { a: 1 };
const obj2 = { a: 1 };
const obj3 = obj1;
console.log(obj1 === obj2); // false
console.log(obj1 === obj3); // true
2️⃣Глубокое сравнение объектов
Для сравнения содержимого объектов необходимо проверять каждое свойство. Один из способов — написать рекурсивную функцию для глубокого сравнения.
function deepEqual(obj1, obj2) {
if (obj1 === obj2) {
return true;
}
if (obj1 == null || typeof obj1 !== 'object' ||
obj2 == null || typeof obj2 !== 'object') {
return false;
}
const keys1 = Object.keys(obj1);
const keys2 = Object.keys(obj2);
if (keys1.length !== keys2.length) {
return false;
}
for (let key of keys1) {
if (!keys2.includes(key) || !deepEqual(obj1[key], obj2[key])) {
return false;
}
}
return true;
}
const obj1 = { a: 1, b: { c: 2 } };
const obj2 = { a: 1, b: { c: 2 } };
const obj3 = { a: 1, b: { c: 3 } };
console.log(deepEqual(obj1, obj2)); // true
console.log(deepEqual(obj1, obj3)); // false
3️⃣Использование библиотек
Существуют библиотеки, которые предоставляют функции для глубокого сравнения объектов, например, lodash или deep-equal.
const _ = require('lodash');
const obj1 = { a: 1, b: { c: 2 } };
const obj2 = { a: 1, b: { c: 2 } };
const obj3 = { a: 1, b: { c: 3 } };
console.log(_.isEqual(obj1, obj2)); // true
console.log(_.isEqual(obj1, obj3)); // false
4️⃣Проверка свойств с учетом порядка и типов
Для простых случаев можно использовать сериализацию объектов с помощью JSON.stringify, однако этот метод имеет ограничения и может не работать с более сложными структурами (например, с функциями, undefined, или символами).
const obj1 = { a: 1, b: { c: 2 } };
const obj2 = { a: 1, b: { c: 2 } };
const obj3 = { a: 1, b: { c: 3 } };
console.log(JSON.stringify(obj1) === JSON.stringify(obj2)); // true
console.log(JSON.stringify(obj1) === JSON.stringify(obj3)); // false
Для сравнения объектов можно использовать:
✅Сравнение ссылок с ===, если нужно проверить, указывают ли переменные на один и тот же объект.
✅Глубокое сравнение с помощью рекурсивной функции или библиотек (например, lodash), чтобы проверить равенство содержимого объектов.
✅Сериализация с JSON.stringify для простых случаев, хотя этот метод имеет ограничения и может не работать с более сложными структурами.
👉 Можно посмотреть Примеры как отвечают люди на этот вопрос, или перейти К списку 1429 вопроса на Frontend разработчика. Ставь 👍 если нравится контент
🔐 База собесов | 🔐 База тестовых