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

Ссылка: @Portal_v_IT

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

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

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

canst a = Object.create({ x: 1 }, {});
a.__proto__.y = 2;
const b = JSON.parse(JSON.stringify(a));

console.log(a.y, b.y);

Ответ: 2 undefined

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

const num = 9;
const str = num.toString().padStart(3, "0");
console.log(str);

Ответ: 009

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

console.log(0x2 + 2);
console.log(2 + 0x2);

Ответ: 4 4

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

console.log(0.1 + 0.2 == 0.3);

Ответ: false

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

function* numberDoubler(arr) {
for (const num of arr) {
yield num * 2;
}
}

const result = [...numberDoubler([1, 2, 3])].some(n => n % 4 === 0);

console.log(result);

Ответ: true

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

function* idGenerator() {
let id = 1;
while (true) {
yield id++;
}
}

const gen = idGenerator();
const ids = Array.from({ length: 3 }, () => gen.next().value).map(id => `ID${id}`);

console.log(ids);

Ответ: ["ID1", "ID2", "ID3"]

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

const obj = { x: "a", y: "b" };
const a = Object.entries(obj).reduce((acc, el) =>
acc[el[1]] = el[0], {});

console.log(a);

Ответ: y

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

const myPromise = () =>
new Promise((resolve, reject) => {
setTimeout(() => {
resolve('Hello, World!');
}, 2000);
});

console.log('Start');

(async () => {
const result = await myPromise();
console.log(result);
})();

console.log('End');

Ответ: "Start", "End", "Hello, World!"

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

const arr = [0, 1, 2];

function getTail(x) {
return x.pop();
}

getTail(arr);
getTail([...arr]);
getTail(arr);

console.log(arr);

Ответ: [0]

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

const numbers = [9, 3, 11];
numbers.sort();
console.log(numbers[1]);

Ответ: 3

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

console.log(typeof typeof {});

Ответ: string

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

function* fibGenerator() {
let a = 0, b = 1;
while (true) {
let next = a + b;
a = b;
b = next;
yield next;
}
}

const gen = fibGenerator();
const fibArray = Array.from({ length: 5 }, () => gen.next().value);

console.log(fibArray);

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

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

function* alternatingGenerator() {
yield 1;
yield 2;
yield 3;
}

const gen = alternatingGenerator();
const result = [gen.next().value, gen.next().value, gen.next().value].reduce((acc, curr) => acc + curr, 0);

console.log(result);

Ответ: 6

JavaScript test | ChatGPT | #JavaScript
Array.prototype.reduce()

Метод reduce() применяет функцию аккумулятора к каждому элементу массива и возвращает одно значение.

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

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 | ChatGPT | #JavaScript
Array.prototype.find()

Метод find() возвращает первый элемент массива, удовлетворяющий заданному условию.

JavaScript test | ChatGPT | #JavaScript
String.prototype.startsWith()

Метод startsWith() проверяет, начинается ли строка с заданной подстроки.

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

const weakMap = new WeakMap();
const obj1 = {};
const obj2 = {};

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

const arr = [obj1, obj2];
const result = arr.map(obj => weakMap.get(obj)).join(', ');

console.log(result);

Ответ: "value1, value2"

JavaScript test | ChatGPT | #JavaScript
Функции высшего порядка

Функции могут принимать другие функции как аргументы или возвращать их.

JavaScript test | ChatGPT | #JavaScript
Перебор свойств

Мы можем перебрать все свойства объекта и получить их ключи и значения.

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

function* idGenerator() {
let id = 1;
while (true) {
yield id++;
}
}

const gen = idGenerator();
const weakMap = new WeakMap();
const objs = [{}, {}, {}];

objs.forEach(obj => weakMap.set(obj, gen.next().value));

const result = objs.map(obj => weakMap.get(obj)).filter(id => id % 2 === 0);

console.log(result);

Ответ: [2]

JavaScript test | ChatGPT | #JavaScript