❗️Что будет на выходе:
Ответ:Alice
JavaScript test | #JavaScript & Max
const obj = {};
Object.defineProperty(obj, 'name', {
value: 'Alice',
writable: false,
configurable: false
});
try {
obj.name = 'Bob';
delete obj.name;
console.log(obj.name);
} catch (e) {
console.log('Error:', e.message);
}Ответ:
❗️Что будет на выходе:
Ответ:[ 1, 3, 5, 7, 9 ]
15
[ 1, 2, 3 ]
JavaScript test | #JavaScript & Max
var arr=[1,2,3,4,5];
console.log(arr.map((prev,curr)=>prev+curr));
console.log(arr.reduce((a,b)=>a+b));
console.log(arr.filter((a,b)=> (a + b) <= 5));
Ответ:
15
[ 1, 2, 3 ]
JavaScript test | #JavaScript & Max
❗️Что будет на выходе:
Ответ:3 [ 1, 2, 3, '-1': 10 ]
JavaScript test | #JavaScript & Max
const arr = [1, 2, 3];
arr[-1] = 10;
console.log(arr.length, arr);
Ответ:
JavaScript test | #JavaScript & Max
❗️Что будет на выходе?
Ответ:ALICE-BOB-CHARLIE
JavaScript test | #JavaScript & Max
const team = {
members: ['Alice', 'Bob', 'Charlie'],
[Symbol.iterator]: function*() {
let index = 0;
while(index < this.members.length) {
yield this.members[index++].toUpperCase();
}
}
};
const result = [];
for (const member of team) {
result.push(member);
}
console.log(result.join('-'));Ответ:
JavaScript test | #JavaScript & Max
❗️Что будет на выходе?
Ответ:3
7
10
JavaScript test | #JavaScript & Max
const arr = [];
arr.length = 3;
arr[10] = 7;
arr.forEach((el, i) => console.log(i))
Ответ:
7
10
JavaScript test | #JavaScript & Max
Как frontend-разработчику получить оффер в Big Tech?
Платят как джуну, а спрашивают как с лида 🙄 Зарплата не растёт, задачи скучные.
Пробуешь откликаться, но на резюме клюют только ноунейм компании, а на собесах валят на алгоритмах? При этом вокруг кто-то постоянно получает офферы в Яндекс или VK...
Стабильность с маленькой зп, или дестрой рынка и выход на максимальную? Синяя или красная таблетка, Нео?! 👾
В своем канале:
👉Разбираю самые популярные и каверзные вопросы на собесах
👉Рассказываю как пройти фильтр HR
👉Борюсь с убеждениями, которые мешают развиваться
👉Делюсь лайфхаками, например как аккуратно “пинговать” рекрутеров
Регулярно публикую полезные материалы:
▪️100 вопросов, которые точно помогут тебе на собеседовании
▪️Подборка из 100+ каналов с вакансиями для разработчиков
▪️10 задротских вопросов про JavaScript, после которых ты усомнишься, что вообще знаешь JS. Часть 1
▪️Чек лист проверки своего резюме
Подписывайся, нас уже 4500 🤓: ссылка
Реклама, erid: 2W5zFHrkgtq ИП Галактионов Тихон Витальевич, ИНН 771618975809
Платят как джуну, а спрашивают как с лида 🙄 Зарплата не растёт, задачи скучные.
Пробуешь откликаться, но на резюме клюют только ноунейм компании, а на собесах валят на алгоритмах? При этом вокруг кто-то постоянно получает офферы в Яндекс или VK...
Стабильность с маленькой зп, или дестрой рынка и выход на максимальную? Синяя или красная таблетка, Нео?! 👾
Меня зовут Тихон, привет! Я — действующий Frontend-разработчик и ментор.
Помогаю устроиться на хорошие позиции в Big Tech и сопровождаю на испытательном сроке.
В своем канале:
👉Разбираю самые популярные и каверзные вопросы на собесах
👉Рассказываю как пройти фильтр HR
👉Борюсь с убеждениями, которые мешают развиваться
👉Делюсь лайфхаками, например как аккуратно “пинговать” рекрутеров
Регулярно публикую полезные материалы:
▪️100 вопросов, которые точно помогут тебе на собеседовании
▪️Подборка из 100+ каналов с вакансиями для разработчиков
▪️10 задротских вопросов про JavaScript, после которых ты усомнишься, что вообще знаешь JS. Часть 1
▪️Чек лист проверки своего резюме
Подписывайся, нас уже 4500 🤓: ссылка
Реклама, erid: 2W5zFHrkgtq ИП Галактионов Тихон Витальевич, ИНН 771618975809
❗️Что будет на выходе:
Ответ:true 1 2 3
JavaScript test | #JavaScript & Max
function* gen() {
yield 1;
yield 2;
yield 3;
}
async function asyncFunc() {
for (let value of gen()) {
await new Promise(res => setTimeout(res, 100));
console.log(value);
}
return 'done';
}
const result = asyncFunc();
console.log(result instanceof Promise);Ответ:
JavaScript test | #JavaScript & Max
❗️Что будет на выходе:
Ответ:Starting... Promise { 'Data loaded' } Data loaded Cleanup Processing complete
JavaScript test | #JavaScript & Max
async function fetchData() {
return 'Data loaded';
}
async function processData() {
console.log('Starting...');
try {
const result = fetchData();
console.log(result);
console.log(await result);
return 'Processing complete';
} catch (error) {
return 'Error occurred';
} finally {
console.log('Cleanup');
}
}
processData().then(result => console.log(result));Ответ:
❗️Что будет на выходе:
Ответ:ReferenceError: Cannot access 'x' before initialization
JavaScript test | #JavaScript & Max
let x = 5;
function foo() {
console.log(x);
let x = 10;
console.log(x);
}
foo();
Ответ:
❗️Что будет на выходе:
Ответ:Alice
JavaScript test | #JavaScript & Max
const obj = {};
Object.defineProperty(obj, 'name', {
value: 'Alice',
writable: false,
configurable: false
});
try {
obj.name = 'Bob';
delete obj.name;
console.log(obj.name);
} catch (e) {
console.log('Error:', e.message);
}Ответ:
❗️Что будет на выходе:
Ответ:{ id: 42, name: 'Item', count: 3 }
JavaScript test | #JavaScript & Max
function analyze(...items) {
const [first, ...rest] = items;
const { length } = [...rest, 'bonus'];
const result = {
...first,
count: length,
};
console.log(result);
}
analyze({ id: 42, name: 'Item' }, 'a', 'b');Ответ:
JavaScript test | #JavaScript & Max
❗️Что будет на выходе?
Ответ:[true, undefined, 2]
JavaScript test | #JavaScript & Max
const privateData = new WeakMap();
function Person(name) {
privateData.set(this, { name, secretCount: 0 });
this.greet = function() {
const data = privateData.get(this);
data.secretCount++;
return `Hello, my name is ${data.name}`;
};
this.getSecretCount = function() {
return privateData.get(this).secretCount;
};
}
const alice = new Person('Alice');
alice.greet();
alice.greet();
const result = [
privateData.has(alice),
alice.name,
alice.getSecretCount()
];
console.log(result);
Ответ:
JavaScript test | #JavaScript & Max
❗️Что будет на выходе:
Ответ:true 1 2 3
JavaScript test | #JavaScript & Max
function* gen() {
yield 1;
yield 2;
yield 3;
}
async function asyncFunc() {
for (let value of gen()) {
await new Promise(res => setTimeout(res, 100));
console.log(value);
}
return 'done';
}
const result = asyncFunc();
console.log(result instanceof Promise);Ответ:
JavaScript test | #JavaScript & Max
❗️Что будет на выходе:
Ответ:0 3
JavaScript test | #JavaScript & Max
"use strict";
function createCounter() {
let count = 0;
return {
increment() { count++; },
get value() { return count; },
reset: function() { count = 0; }
};
}
const counter = createCounter();
counter.increment();
counter.increment();
counter.increment();
const { value, reset } = counter;
reset();
console.log(counter.value, value);
Ответ:
JavaScript test | #JavaScript & Max
❗️Что будет на выходе:
Ответ:true
JavaScript test | #JavaScript & Max
function recursivePalindromeCheck(str) {
if (str.length <= 1) {
return true;
}
return str[0] === str[str.length - 1] && recursivePalindromeCheck(str.slice(1, -1));
}
const result = recursivePalindromeCheck("radar");
console.log(result);Ответ:
JavaScript test | #JavaScript & Max
❗️Что будет на выходе:
Ответ:true 'TypeError' true
JavaScript test | #JavaScript & Max
try {
try {
// Creating a custom error type
class CustomError extends Error {
constructor(message) {
super(message);
this.name = "CustomError";
}
}
const fn = () => {
throw new CustomError("Something went wrong");
};
try {
fn();
} catch (e) {
throw new TypeError("Type error occurred");
}
} catch (e) {
console.log(e instanceof Error, e.name, e instanceof TypeError);
}
} catch (e) {
console.log("Outer catch", e.message);
}Ответ:
JavaScript test | #JavaScript & Max
❗️Что будет на выходе:
Ответ:20 4 6 Not found
JavaScript test | #JavaScript & Max
const target = { a: 1, b: 2 };
const handler = {
get(obj, prop) {
return prop in obj ? obj[prop] * 2 : 'Not found';
}
};
const proxy = new Proxy(target, handler);
// Add property to original object
target.c = 3;
// Modify existing property directly on proxy
proxy.a = 10;
// Use Reflect.get instead of direct property access
const result = Reflect.get(proxy, 'd', { custom: true });
console.log(proxy.a, proxy.b, proxy.c, result);Ответ:
JavaScript test | #JavaScript & Max
❗️Что будет на выходе:
Ответ:
Eagles-Smith-Williams-Brown-10-0
JavaScript test | #JavaScript & Max
const team = {
name: 'Eagles',
players: ['Smith', 'Johnson', 'Williams'],
coach: { name: 'Brown', experience: 12 },
stats: { wins: 10, losses: 6 }
};
const {
name: teamName,
players: [firstPlayer, , thirdPlayer],
coach: { name },
stats: { wins, draws = 0 }
} = team;
console.log(`${teamName}-${firstPlayer}-${thirdPlayer}-${name}-${wins}-${draws}`);Ответ:
❗️Что будет на выходе:
Ответ:
HELLO | dlroW?
JavaScript test | #JavaScript & Max
const str = " Hello, World! ";
const result = str
.trim()
.split(", ")
.map((word, i) => {
return i === 0
? word.toUpperCase()
: word.replace(/!$/, "").split("").reverse().join("") + "?";
})
.join(" | ");
const [first, ...rest] = result.split(" | ");
const final = `${first} | ${rest.join(" & ")}`;
console.log(final);
Ответ:
❗️Что будет на выходе:
Ответ:
A D B C
JavaScript test | #JavaScript & Max
const p1 = new Promise((resolve) => {
console.log("A");
resolve("B");
});
const p2 = p1.then((val) => {
console.log(val);
return "C";
});
p2.then((val) => {
console.log(val);
});
console.log("D");
Ответ:
❗️Что будет на выходе:
Ответ:5 20 30 20
JavaScript test | #JavaScript & Max
function processData({ a = 10, b = 20 } = { a: 30 }) {
console.log(a, b);
}
processData({ a: 5 });
processData();Ответ: