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

Ссылка: @Portal_v_IT

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

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

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

function processConfig(config) {
const defaults = {
timeout: 1000,
retries: 3,
enabled: false,
count: 0
};

const settings = {
...defaults,
...config
};

const effectiveTimeout = settings.timeout ?? 500;
const effectiveRetries = settings.retries ?? 1;
const effectiveEnabled = settings.enabled ?? true;
const effectiveCount = settings.count ?? 5;

console.log([effectiveTimeout, effectiveRetries, effectiveEnabled, effectiveCount]);
}

processConfig({ timeout: null, retries: 0, enabled: undefined });

Ответ: [500, 0, true, 0]

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

let funcs = [];

for (var i = 0; i <= 3; i++) {
funcs.push(() => i);
}

console.log(funcs[0]());
console.log(funcs[1]());
console.log(funcs[2]());

Ответ: 4
4
4
4


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

const numbers = [33, 2, 8];
numbers.sort();
console.log(numbers);

Ответ: [ 2, 33, 8 ]

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

const x = "5";
const y = 3;
const result = x - y;
console.log(result);

Ответ: 2

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

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
❗️Что будет на выходе?

let proto = { a: 1 };
let obj = Object.create(proto);

Object.defineProperty(obj, 'a', {
value: 3,
writable: true,
enumerable: true,
configurable: true
});

console.log(obj.a);
proto.a = 3;
console.log(obj.a);

Ответ: { a: 3 }
3
3
3


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

const a = 9007199254740991n;
const b = 2n;

function performCalculation() {
const c = a + 1n;
const d = c / b;
const e = d * 2n - 1n;

const result = Number(e) === Number(a);
console.log(result);
}

performCalculation();

Ответ: true

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

const obj = {
[Symbol('a')]: 'hidden',
a: 'visible',
[Symbol.for('b')]: 'registered',
b: 123
};

const symbol1 = Symbol.for('b');
const symbol2 = Symbol.for('b');

console.log(obj.a + ', ' +
obj[Symbol('a')] + ', ' +
obj[symbol1] + ', ' +
(symbol1 === symbol2));

Ответ: visible, undefined, registered, true

JavaScript test | #JavaScript
🖥 Linux Academy — топ-канал для продвинутого освоения Linux.

Мы раскрываем скрытые механизмы ядра через наглядные шпаргалки и яркую визуальную графику, детально разбираем малоизвестные команды и скрипты.

Экспресс-гайды, которые экономят часы поиска: t.me/linuxacademiya
Please open Telegram to view this post
VIEW IN TELEGRAM
❗️Что будет на выходе?

console.log(typeof null);
console.log(typeof undefined);
console.log(typeof {});
console.log(typeof []);

Ответ: object, undefined, object, object

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

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

Ответ: '10'

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

function* counter() {
let i = 0;
while (true) {
const direction = yield i;
if (direction === 'up') i += 2;
else if (direction === 'down') i -= 1;
else i += 1;
}
}

const count = counter();
console.log(count.next().value);
console.log(count.next('up').value);
console.log(count.next('down').value);
console.log(count.next().value);

Ответ: 0 2 1 2

JavaScript test | #JavaScript
Forwarded from DevHumor
This media is not supported in your browser
VIEW IN TELEGRAM
У меня уровень A1

Взято из: DevHumor
❗️Что будет на выходе?

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());

Ответ: 0
0
1
1


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

function* genSequence() {
const result = yield 'first';
console.log(result);
yield* [1, 2];
return 'done';
}

const gen = genSequence();
let next = gen.next('ignored');
console.log(next.value);
next = gen.next('second');
next = gen.next();
console.log(next.value);
next = gen.next();
console.log(next);

Ответ: first second 2 { value: 'done', done: true }

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

function calc(num) {
return num + 0.01 * '0';
}

typeof calc('hello');

Ответ: 'string'

JavaScript test | #JavaScript