❗️Что будет на выходе:
Ответ:[5, 7, 9]
JavaScript test | #JavaScript
function* rangeGenerator(start, end, step = 1) {
let current = start;
while (current <= end) {
yield current;
current += step;
}
}
const numbers = rangeGenerator(1, 10, 2);
numbers.next();
numbers.next();
const values = [...numbers];
console.log(values);Ответ:
JavaScript test | #JavaScript
❗️Что будет на выходе:
Ответ:1, 2, 3
JavaScript test | #JavaScript
function* generator1() {
yield 1;
yield 2;
}
function* generator2() {
yield* generator1();
yield 3;
}
const gen = generator2();
console.log(gen.next().value);
console.log(gen.next().value);
console.log(gen.next().value);Ответ:
JavaScript test | #JavaScript
❗️Что будет на выходе:
Ответ:TypeError: this.greet is a not a function
JavaScript test | #JavaScript
const obj = {
name: 'Taylor',
greet() {
return `Hello, ${this.name}!`;
},
delayedGreet() {
setTimeout(function() {
console.log(this.greet());
}, 100);
}
};
obj.delayedGreet();Ответ:
JavaScript test | #JavaScript
❗️Что будет на выходе:
Ответ:1
JavaScript test | #JavaScript
var a = 1;
const arrowQuiz = () => {
console.log(this.a);
};
arrowQuiz();
var a = 2;
Ответ:
JavaScript test | #JavaScript
❗️Что будет на выходе:
Ответ:3
JavaScript test | #JavaScript
function createCounter() {
let count = 0;
function increment() {
count += 1;
return count;
}
function decrement() {
count -= 1;
return count;
}
return { increment, decrement, value: () => count };
}
const counter = createCounter();
counter.increment();
counter.increment();
counter.decrement();
console.log(counter.value() + counter.increment());Ответ:
JavaScript test | #JavaScript
❗️Что будет на выходе:
Ответ:3
JavaScript test | #JavaScript
const a = [1, 2, 3];
const b = a.slice(0, 2).push(4);
console.log(b);
Ответ:
JavaScript test | #JavaScript
❗️Что будет на выходе:
Ответ:1
JavaScript test | #JavaScript
const obj = { length: 3 };
console.log(Object.keys(obj).length);Ответ:
JavaScript test | #JavaScript
❗️Что будет на выходе:
Ответ:{ map: true, weakMap: true }
JavaScript test | #JavaScript
const memoryLeak = () => {
const cache = new Map();
const weakCache = new WeakMap();
const objKey = { id: 123 };
const data = { name: 'User data', value: 42 };
cache.set(objKey, data);
weakCache.set(objKey, data);
// Simulate removing reference to key
const result = { map: cache.has(objKey), weakMap: weakCache.has(objKey) };
// objKey = null; // This would be an error, as const can't be reassigned
return result;
};
console.log(memoryLeak());Ответ:
JavaScript test | #JavaScript
❗️Что будет на выходе:
Ответ:10 10 10 10 10 10 10 10 10 10
JavaScript test | #JavaScript
for (var i =0; i < 10; i++){
setTimeout(function (){
console.log(i);
}, 0);
}Ответ:
❗️Что будет на выходе:
Ответ:3
JavaScript test | #JavaScript
function createCounter() {
let count = 0;
return {
increment() {
return ++count;
},
reset() {
const oldCount = count;
count = 0;
return oldCount;
}
};
}
const counterA = createCounter();
const counterB = createCounter();
counterA.increment();
counterA.increment();
counterB.increment();
const result = counterA.reset() + counterB.reset();
console.log(result);Ответ:
❗️Что будет на выходе:
Ответ:Script Start, Async Start, Script End, Timeout 1, Async End, Timeout 2
JavaScript test | #JavaScript
async function asyncFunc() {
console.log('Async Start');
await new Promise(resolve => setTimeout(resolve, 100));
console.log('Async End');
}
console.log('Script Start');
asyncFunc();
setTimeout(() => console.log('Timeout 1'), 50);
setTimeout(() => console.log('Timeout 2'), 150);
console.log('Script End');Ответ:
❗️Что будет на выходе:
Ответ:2
JavaScript test | #JavaScript
const users = [
{ id: 1, name: 'Sarah' },
{ id: 2, name: 'Miguel' },
{ id: 3, name: 'Jordan' }
];
const activeUsers = new WeakSet();
activeUsers.add(users[0]);
activeUsers.add(users[2]);
users.splice(1, 1); // Remove Miguel
let count = 0;
for (const user of users) {
if (activeUsers.has(user)) count++;
}
console.log(count);
Ответ:
❗️Что будет на выходе:
Ответ:1
JavaScript test | #JavaScript
function* infiniteGenerator() {
let i = 0;
while (true) {
yield i++;
}
}
const weakMap = new WeakMap();
const gen = infiniteGenerator();
weakMap.set(gen, gen.next().value);
const result = weakMap.get(gen) + gen.next().value;
console.log(result);Ответ:
❗️Что будет на выходе:
Ответ:A C E F
JavaScript test | #JavaScript
function mystery() {
try {
console.log('A');
throw new Error('Oops');
console.log('B');
} catch (err) {
console.log('C');
return 'D';
} finally {
console.log('E');
return 'F';
}
console.log('G');
return 'H';
}
console.log(mystery());Ответ:
❗️Что будет на выходе:
Ответ:"54321"
JavaScript test | #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);Ответ:
❗️Что будет на выходе:
Ответ:11
JavaScript test | #JavaScript
const compose = (...fns) => x => fns.reduceRight((acc, fn) => fn(acc), x);
const addTwo = num => num + 2;
const multiplyByThree = num => num * 3;
const subtractTen = num => num - 10;
const calculate = compose(subtractTen, multiplyByThree, addTwo);
console.log(calculate(5));
Ответ:
❗️Что будет на выходе:
Ответ:[1, 2, 3, 4]
JavaScript test | #JavaScript
function* generator() {
yield* [1, 2];
yield* (function* () { yield 3; yield 4; })();
}
const gen = generator();
console.log([...gen]);Ответ:
JavaScript test | #JavaScript
❗️Что будет на выходе:
Ответ:1,2
JavaScript test | #JavaScript
const a = { x: 1 };
a.__proto__.x = 2;
const b {};
console.log(a.x, b.x);Ответ:
JavaScript test | #JavaScript
❗️Что будет на выходе:
Ответ:4 true
JavaScript test | #JavaScript
function Vehicle(wheels) {
this.wheels = wheels;
}
Vehicle.prototype.getWheels = function() {
return this.wheels;
};
function Car() {
Vehicle.call(this, 4);
this.doors = 4;
}
Car.prototype = Object.create(Vehicle.prototype);
Car.prototype.constructor = Car;
const myCar = new Car();
console.log(myCar.getWheels(), myCar instanceof Vehicle);Ответ:
JavaScript test | #JavaScript
❗️Что будет на выходе:
Ответ:function, object
JavaScript test | #JavaScript
console.log(typeof Object);
console.log(typeof Object());
Ответ:
JavaScript test | #JavaScript