JavaScript test
10.2K subscribers
3.05K photos
6 videos
4.41K 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 | ChatGPT | #JavaScript
Что будет на выходе?

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 | ChatGPT | #JavaScript
Использование JavaScript FileReader API для чтения файлов на стороне клиента

FileReader API позволяет веб-приложениям читать содержимое файлов на стороне клиента без необходимости отправлять файлы на сервер. Это может быть полезно, например, для загрузки и обработки текстовых файлов, изображений и других медиафайлов.

JavaScript test | ChatGPT | #JavaScript
Работа с Promise

Этот код создает и использует промис для асинхронной обработки данных и управления успешными и неуспешными результатами.

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

const obj = {
a: 1,
b: 2,
getSum() {
return this.a + this.b;
}
};

const cloneObj = { ...obj, getSum() { return this.b + this.a; } };

console.log(obj.getSum());
console.log(cloneObj.getSum());

Ответ: 3 3

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

Ответ: 4, [1, 2, 3, 4]

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

const a = [1, 2, 3];
const b = a;

b[0] = 0;

console.log(a);

Ответ: [0, 2, 3]

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

const obj = {
value: 42,
getValue() {
return Math.max(this.value, 50);
}
};

const obj2 = {
value: 25,
getValue: obj.getValue
};

console.log(obj.getValue());
console.log(obj2.getValue());

Ответ: 50, 50

JavaScript test | ChatGPT | #JavaScript
Работа с Web-сокетами (WebSockets)

Этот код демонстрирует, как устанавливать WebSockets-соединение с сервером, отправлять и получать сообщения в режиме реального времени. WebSockets широко используются для создания интерактивных и мгновенных веб-приложений.

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

var a = 'b';
var b = 'c';

(function () {
console.log(a);
var a = 'd';
b = 'e';
console.log(b);
})();

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

Ответ: undefined e b e

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

const obj = {
count: 0,
increment() {
this.count++;
},
getCount() {
return (() => this.count)();
}
};

obj.increment();
obj.increment();

console.log(obj.getCount());

Ответ: 2

JavaScript test | ChatGPT | #JavaScript
Группировка данных с помощью reduce

Метод reduce применяется для агрегации значений в массиве. В этом примере, мы используем reduce для вычисления суммы чисел.

JavaScript test | ChatGPT | #JavaScript
Работа с Resize Observer для отслеживания изменений размеров элементов

Resize Observer позволяет отслеживать изменения размеров элементов и реагировать на них в коде.

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

const obj = {
data: [1, 2, 3],
getData() {
return this.data.map(x => x * 2);
}
};

const newData = obj.getData.bind({ data: [4, 5, 6] })();
console.log(newData);

Ответ: [8, 10, 12]

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

const numbers = [2, 4, 6, 8, 10];
const oddIndices = numbers.filter((_, index) => index % 2 === 1);
const sum = oddIndices.reduce((acc, value) => acc + value, 0);
console.log(sum);

Ответ: 12

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

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

function foo(arr) {
const newArr = arr.filter((item) => item % 2 === 0).map((item) => item * 2);
return newArr.reduce((acc, item) => acc + item, 0);
}

console.log(foo(arr));

Ответ: 12

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

const value = 10;

const add = () => {
return {
value: 20,
getValue: function () {
return this.value;
}
};
};

const result = add().getValue();

console.log(result);

Ответ: 20

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

const promise1 = Promise.resolve(5);
const promise2 = 42;
const promise3 = new Promise((resolve, reject)
=> {
setTimeout(resolve, 100, 'foo');
});

Promise.all([promise1, promise2, promise3])
.then(values => console.log(values))

Ответ: [5, 42, 'foo']

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

const numbers = [1, 2, 3, 4, 5];
const asyncSum = async () => {
let sum = 0;
for (const num of numbers) {
await new Promise(resolve =>
setTimeout(resolve, 1000));
sum += num;
}
return sum;
};

asyncSum().then(result => console.log(result));

Ответ: 15

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

function printNumbers() {
for (var i = 0; i < 5; i++) {
setTimeout(function() {
console.log(i);
}, 100);
}
}

printNumbers();

Ответ: 5, 5, 5, 5, 5

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

const obj = {
value: 1,
increment() {
this.value++;
}
};

const increment = obj.increment;
increment();

console.log(obj.value);

Ответ: 1

JavaScript test | ChatGPT | #JavaScript