JavaScript test
9.76K subscribers
3.07K photos
12 videos
4.7K links
Проверка своих знаний по языку JavaScript.

Ссылка: @Portal_v_IT

Сотрудничество: @oleginc, @tatiana_inc

Канал на бирже: telega.in/c/js_test

РКН: clck.ru/3KHeYk
Download Telegram
❗️Что будет на выходе:

const obj = {
data: ['x', 'y', 'z'],
*[Symbol.iterator]() {
for (let i = this.data.length - 1; i >= 0; i--) {
yield this.data[i].toUpperCase();
}
}
};

const result = [];
for (const item of obj) {
result.push(item);
if (result.length === 2) break;
}

console.log(result.join('-'));

Ответ: Z-Y

JavaScript test | #JavaScript & Max
❗️Что будет на выходе:

const cache = new Map();

function memoize(fn) {
return function(...args) {
const key = JSON.stringify(args);
if (cache.has(key)) {
return cache.get(key);
}
const result = fn(...args);
cache.set(key, result);
return result;
};
}

const fibonacci = memoize((n) => {
if (n <= 1) return n;
return fibonacci(n - 1) + fibonacci(n - 2);
});

console.log(fibonacci(5));
console.log(cache.size);

Ответ: 5 6

JavaScript test | #JavaScript & Max
❗️Что будет на выходе:

function asyncQuiz() {
return new Promise((resolve) => {
setTimeout(() => resolve('Hello'), 1000);
});
}

async function runAsyncQuiz() {
const result = await asyncQuiz();
console.log(result);
}

runAsyncQuiz();
console.log('World');

Ответ: World Hello

JavaScript test | #JavaScript & Max
❗️Что будет на выходе:

let a = 1;
let b = new Number(1);
let c = '1';

console.log(a == b);
console.log(a === b);
console.log(b == c);

Ответ: true false true


JavaScript test | #JavaScript & Max
❗️Что будет на выходе:

const x = 5;
const y = 10;

const result = `${x + y}`;
const nested = `Value: ${`${x}` + `${y}`}`;
const expr = `${x}${y}`;

console.log(result);
console.log(nested);
console.log(expr);
console.log(typeof result);

Ответ: 15 Value: 510 510 string

JavaScript test | #JavaScript & Max
❗️Что будет на выходе:

const wm = new WeakMap();
const obj1 = { name: 'first' };
const obj2 = { name: 'second' };

wm.set(obj1, 'value1');
wm.set(obj2, 'value2');

const keys = [];
for (let key of wm) {
keys.push(key);
}

console.log(keys.length);
console.log(wm.has(obj1));
console.log(wm.get(obj2));

console.log(sum);

Ответ: TypeError: vm is noy iterable

JavaScript test | #JavaScript & Max
❗️Что будет на выходе:

function* reverseGenerator(arr) {
for (let i = arr.length - 1; i >= 0; i--) {
yield arr[i];
}
}

const result = [...reverseGenerator([1, 2, 3, 4, 5])].join('');

console.log(result);

Ответ: "54321"


JavaScript test | #JavaScript & Max
❗️Что будет на выходе:

console.log('1');

setTimeout(() => console.log('2'), 0);

Promise.resolve().then(() => console.log('3'));

queueMicrotask(() => console.log('4'));

setTimeout(() => {
console.log('5');
Promise.resolve().then(() => console.log('6'));
}, 0);

console.log('7');

Ответ: 1 7 3 4 2 5 6

JavaScript test | #JavaScript & Max
❗️Что будет на выходе:

function createCounter() {
let count = 0;
return {
increment() {
count++;
return count;
},
getCount() {
return count;
}
};
}

const counter = createCounter();

console.log(counter.increment());
console.log(counter.getCount());
console.log(counter.increment());
console.log(counter.getCount());

Ответ: 1, 1, 2, 2


JavaScript test | #JavaScript & Max
❗️Что будет на выходе:

const obj = { a: 1, b: 2, c: 3 };
const result = Object.values(obj).reduce((acc, curr) => acc * curr, 1);
console.log(result);

Ответ: 6

JavaScript test | #JavaScript & Max
❗️Что будет на выходе:

var a = 5;
function test() {
console.log(a);
var a = 10;
console.log(a);
}

test();

Ответ: undefined 10


JavaScript test | #JavaScript & Max
👩‍💻 Хватит учить только синтаксис, начинай делать реальные проекты!

Python Ready — авторский канал, где Python перестаёт быть только теорией и становится рабочим инструментом. Мини-проекты, боты, советы, разборы задач, гайды и шпаргалки для каждого программиста.

🔥 Советую подписаться: @python_ready
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❗️Что будет на выходе:

console.log(1);

setTimeout(() => {
console.log(2);
}, 100);

setTimeout(() => {
console.log(3);
}, 0);

Promise.resolve().then(() => {
console.log(4);
}).then(() => {
console.log(5);
});

console.log(6);

Ответ: 1, 6, 4, 5, 3, 2

JavaScript test | #JavaScript & Max
❗️Что будет на выходе:

const data = [1, 2, 3, 4, 5];

const result = data.reduce((acc, val) => acc.concat(Array.from({ length: val }, (_, index) => val + index)), []);

console.log(result);

Ответ: [1, 2, 3, 3, 4, 5, 4, 5, 6, 7, 5, 6, 7, 8, 9]

JavaScript test | #JavaScript & Max
Возвращение легенды: самый востребованный практикум Зерокодера по Claude Code снова пройдёт в августе.

CEO университета Зерокодер Кирилл Пшинник проведёт ещё один бесплатный онлайн-практикум, где в прямом эфире покажет, почему вокруг Claude Code столько шума и как использовать его на полную мощность.

На практикуме разберут:

• Как получить доступ к Claude Code из России и начать работать без ограничений;
• Как запускать сразу несколько ИИ-агентов для одного проекта;
• Как за 15 минут собрать рабочий сайт практически без ручного кода;
• Как автоматизировать аналитику и рутинные задачи без дополнительных сервисов;

Бонус: в конце практикума расскажем, как пользоваться Claude Code бесплатно и оформить виртуальную карту для оплаты других AI-сервисов

P.S. Это специальный повтор одного из самых популярных практикумов Зерокодера по Claude Code. Жмите на ссылку и успевайте зарегистрироваться!
❗️Что будет на выходе:

const compose = (...fns) => (x) => fns.reduceRight((acc, fn) => fn(acc), x);
const pipe = (...fns) => (x) => fns.reduce((acc, fn) => fn(acc), x);

const double = (x) => x * 2;
const addTen = (x) => x + 10;
const square = (x) => x * x;
const negate = (x) => -x;

const transform1 = compose(negate, square, addTen, double);
const transform2 = pipe(double, addTen, square, negate);

const input = 3;

console.log(transform1(input));
console.log(transform2(input));
console.log(transform1(input) === transform2(input));

Ответ: -256 -256 true

JavaScript test | #JavaScript & Max