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

Ссылка: @Portal_v_IT

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

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

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

const numbers = [0,0,0];

let i = 0;
const result = numbers.reduce((acc, _) => {
return ++acc;
}, i);

console.log(i, result);

Ответ: 0 3


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

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

const result = numbers
.map(n => n * 2)
.filter(n => n > 5)
.reduce((acc, n, index) => {
acc.sum += n;
acc.indices.push(index);
return acc;
}, { sum: 0, indices: [] });

console.log(result.sum);
console.log(result.indices);

Ответ: 18 [0, 1, 2]

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

console.log('Start');

setTimeout(() => {
console.log('Timeout 1');
}, 0);

Promise.resolve().then(() => {
console.log('Promise 1');
}).then(() => {
console.log('Promise 2');
});

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

console.log('End');

Ответ: Start, End, Promise 1, Promise 2, Timeout 1, Timeout 2

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 };
const proxy = new Proxy(obj, {
get(target, prop) {
return prop in target ? target[prop] : 0;
}
});

console.log(proxy.a, proxy.b, proxy.c);

Ответ: 1, 2, 0

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

function processData(data) {
try {
if (!data) {
throw new TypeError('Data is missing');
}

const result = data.process();
return result;
} catch (error) {
console.log(error instanceof ReferenceError ? 1 :
error instanceof TypeError ? 2 :
error instanceof SyntaxError ? 3 : 4);
}
}

processData(null);

Ответ: 2

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

function createCounter() {
let count = 0;
return {
increment: () => ++count,
decrement: () => --count,
get: () => count
};
}

const counter1 = createCounter();
const counter2 = createCounter();
counter1.increment();
counter1.increment();
counter2.increment();
console.log(counter1.get(), counter2.get());
const { increment, get } = counter1;
increment();
console.log(get());

Ответ:
2 1 3


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

const firstArrayData = [ 'JavaScript', 'Universe' ];
const secondArrayData = [ 'JavaScript', 'Universe' ];

console.log(firstArrayData == secondArrayData);
console.log(firstArrayData === secondArrayData);

Ответ: false, false

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

const user = {
name: 'Sarah',
age: 25,
getName() { return this.name; },
getAge: () => this.age
};

const methods = {
regular: user.getName,
arrow: user.getAge
};

console.log(methods.regular());
console.log(methods.arrow());
console.log(user.getName());
console.log(user.getAge());

Ответ: undefined undefined Sarah undefined

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

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

const result = numbers
.map(x => x * 2)
.filter(x => x > 5)
.reduce((acc, x) => {
acc.push(x.toString());
return acc;
}, [])
.map(x => x + '!')
.join(' | ');

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

Ответ: 6! | 8! | 10! string

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

setTimeout(() => console.log('Timeout 1'), 100);

setTimeout(() => {
console.log('Timeout 2');
Promise.resolve().then(() => console.log('Promise in Timeout 2'));
}, 50);

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

setTimeout(() => console.log('Timeout 3'), 150);

console.log('Sync');

Ответ: Sync, Promise 1, Timeout 2, Promise in Timeout 2, Timeout 1, Timeout 3


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

const firstArrayData = [ 'JavaScript', 'Universe' ];
const secondArrayData = [ 'JavaScript', 'Universe' ];

console.log(firstArrayData == secondArrayData);
console.log(firstArrayData === secondArrayData);

Ответ: false, false

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

var str="My name is John";
var words1=str.split(" ",3);
console.log("words1:",words1);
var words2=str.split(" ",5);
console.log("words2:",words2);

Ответ:
words1:[ 'My', 'name', 'is' ]
words2:[ 'My', 'name', 'is', 'John' ]


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

const sym1 = Symbol("id");
const sym2 = Symbol("id");
console.log(sym1 === sym2);

Ответ: false


JavaScript test | #JavaScript & Max