JavaScript test
10.1K subscribers
3.05K photos
6 videos
4.44K links
Проверка своих знаний по языку JavaScript.

Ссылка: @Portal_v_IT

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

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

РКН: clck.ru/3KHeYk
Download Telegram
❗️Что будет на выходе:
const obj = { value: 10 };
const result = (obj.value += 10);
console.log(result);

Ответ: 20

JavaScript test | #JavaScript
❗️Что будет на выходе:
const arr = [1, 2, 3, 4, 5];
const result = arr
.map(x => x * 2)
.filter(x => x > 5)
.reduce((acc, val) => {
return acc + (val % 3 === 0 ? val : 0);
}, 0);

console.log(result);

Ответ: 6

JavaScript test | #JavaScript
❗️Что будет на выходе:
class MyClass {
constructor() {
this.a = 100;
}
}
MyClass.prototype.b = 200;
const obj = new MyClass();
delete obj.b;
console.log(obj.a);

Ответ: 100

JavaScript test | #JavaScript
👩‍💻 Программирование — В С Ё

В 2025 году на кодинге уже не вывезешь, перспектива года - Информационная Безопасность.

Ловите полезные каналы, которые помогут ворваться в новое направление.

👍 ZeroDay — Уроки, эксплуатация уязвимостей с нуля
👍 Белый Хакер — Свежие новости из мира ИБ
😎 Арсенал Безопасника — Все необходимые инструменты
😎 Бункер Хакера — Статьи, книги, шпаргалки и хакинг
👨‍💻 Серверная Админа — Настройка и уроки по компьютерным сетям

📂 Вступай и изучай новое направление!
Please open Telegram to view this post
VIEW IN TELEGRAM
❗️Что будет на выходе:
const items = new WeakSet();
const obj1 = { id: 1 };
const obj2 = { id: 2 };

items.add(obj1);
items.add(obj2);

obj2.value = 'test';
console.log(items.has(obj2));

obj2 = null;
setTimeout(() => {
console.log(items.has(obj2));
}, 0);

Ответ: true, TypeError

JavaScript test | #JavaScript
❗️Что будет на выходе:
Number.prototype[Symbol.iterator] = function*() { yield *['a','b','c','d'] };
console.log([...10]);

Ответ: [ 'a', 'b', 'c', 'd' ]

JavaScript test | #JavaScript
❗️Что будет на выходе:
function* range(start, end) {
let current = start;
while (current <= end) {
if (current % 3 === 0) {
current++;
continue;
}
yield current++;
}
}

const gen = range(4, 10);
const result = [...gen];
console.log(result);

Ответ: [4, 5, 7, 8, 10]

JavaScript test | #JavaScript
❗️Что будет на выходе:
async function asyncChain() {
const values = [2, 3, 5, 7, 0];
const total = await values.reduce(async (acc, values) => {
const current = await acc;
return current * values;
}, Promise.resolve(1));
return total;
}

asyncChain().then(result => console.log(result));

Ответ: 0

JavaScript test | #JavaScript
❗️Что будет на выходе:
var obj = { a: 10, b: 20 };

with (obj) {
let result = a + b;
}

console.log(result);

Ответ: ERROR

JavaScript test | #JavaScript
❗️Что будет на выходе:
async function demo() {
console.log('1');

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

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

await Promise.resolve();
console.log('5');

queueMicrotask(() => console.log('6'));
}

demo();
console.log('7');

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

JavaScript test | #JavaScript
❗️Что будет на выходе:
function multiply(a, b) {
if (b === 0) {
return 0;
} else if (b > 0) {
return a + multiply(a, b - 1);
} else {
return -multiply(a, -b);
}
}

console.log(multiply(-7, -5));

Ответ: 35

JavaScript test | #JavaScript
❗️Что будет на выходе:
function processData({ a = 10, b = 20 } = { a: 30 }) {
console.log(a, b);
}

processData({ a: 5, b: 10 });
processData();

Ответ:
5 10
30 20


JavaScript test | #JavaScript
❗️Что будет на выходе:
const config = {
port: 0,
timeout: null,
retries: '',
cache: false,
debug: undefined
};

const port = config.port ?? 3000;
const timeout = config.timeout ?? 5000;
const retries = config.retries ?? 3;
const cache = config.cache ?? true;
const debug = config.debug ?? false;

console.log([port, timeout, retries, cache, debug]);

Ответ:
[0, 5000, '', false, false]

JavaScript test | #JavaScript
❗️Что будет на выходе:
const regex = /^pear/gm;
const str = `dog
cat
bat`;
console.log(str.match(regex));

Ответ:
null

JavaScript test | #JavaScript
❗️Что будет на выходе:
function* gen() {
yield* ['x', 2, 3].map(x => x * 2);
}

const iterator = gen();
console.log(iterator.next().value);
console.log(iterator.next().value);
console.log(iterator.next().value);
console.log(iterator.next().value);

Ответ:
NaN
4
6
undefined


JavaScript test | #JavaScript
❗️Что будет на выходе:
function test() {
console.log(arguments.length);
}

test(1, 2, 3);
test.call(null, null, null, null);

Ответ:
3
3


JavaScript test | #JavaScript
❗️Что будет на выходе:
const team = {
captain: { name: 'Jack', age: 35 },
players: ['Bob', 'Alice', 'Mike'],
details: { founded: 2020, league: 'Premier' }
};

const {
captain: { name },
players: [, second],
details: { league: division = 'Amateur' }
} = team;

console.log(`${name}-${second}-${division}`);

Ответ:
Jack-Alice-Premier

JavaScript test | #JavaScript
❗️Что будет на выходе:
const handler = {
get: (target, prop) => {
if (prop in target) {
return target[prop] * 2;
}
return 100;
}
};

const nums = new Proxy({ a: 5, b: 10 }, handler);
console.log(nums.a, nums.b, nums.c);

Ответ:
10 20 100

JavaScript test | #JavaScript
Что будет на выходе?

const range = Array.from({ length: 5 }, (_, index) =>
index + 1);
console.log(range);

Ответ: [1, 2, 3, 4, 5]

JavaScript test | #JavaScript
❗️Что будет на выходе:
async function fetchData() {
const promise = new Promise(resolve => {
setTimeout(() => resolve('first'), 2000);
});

console.log('start');
const result = await promise;
console.log(result);
console.log('end');
}

fetchData();
const x = 'after';
console.log(x);

Ответ:
start alert first end

JavaScript test | #JavaScript
❗️Что будет на выходе:
const map = new Map();
const key1 = {};
const key2 = key1;

map.set(key1, "Value for key1");
map.set(key2, "Value for key2");

console.log(map.get(key2));
console.log(map.get(key1));

Ответ:
Value for key2
Value for key2


JavaScript test | #JavaScript