❗️Что будет на выходе:
Ответ:6
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);
Ответ:
JavaScript test | #JavaScript
❗️Что будет на выходе:
Ответ:true true false undefined
JavaScript test | #JavaScript
const ws = new WeakSet();
const obj1 = { name: 'first' };
const obj2 = { name: 'second' };
const obj3 = obj1;
ws.add(obj1);
ws.add(obj2);
ws.add(obj3);
console.log(ws.has(obj1));
console.log(ws.has(obj3));
console.log(ws.has({ name: 'first' }));
console.log(ws.size);
Ответ:
JavaScript test | #JavaScript
❗️Что будет на выходе:
Ответ:start 1 2 inner-done end
JavaScript test | #JavaScript
function* innerGenerator() {
yield 1;
yield 2;
return 'inner-done';
}
function* outerGenerator() {
yield 'start';
const result = yield* innerGenerator();
yield result;
yield 'end';
}
const gen = outerGenerator();
console.log(gen.next().value);
console.log(gen.next().value);
console.log(gen.next().value);
console.log(gen.next().value);
console.log(gen.next().value);
Ответ:
JavaScript test | #JavaScript
❗️Что будет на выходе:
Ответ:0,2,6
JavaScript test | #JavaScript
function processData() {
const results = [];
for (let i = 0; i < 3; i++) {
const multiplier = i + 1;
setTimeout(() => {
results.push(i * multiplier);
}, 0);
}
setTimeout(() => {
console.log(results.join(','));
}, 10);
}
processData();
Ответ:
JavaScript test | #JavaScript
❗️Что будет на выходе:
Ответ:16
JavaScript test | #JavaScript
class Calculator {
constructor(value) {
this.value = value;
}
add(num) {
this.value += num;
return this;
}
multiply(num) {
this.value *= num;
return this;
}
}
const calc = new Calculator(5);
const addMethod = calc.add;
const result = addMethod.call(calc, 3).multiply(2);
console.log(result.value);
Ответ:
JavaScript test | #JavaScript