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

Ссылка: @Portal_v_IT

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

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

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

let elf = 'Estel';
function lapland (params) { console.log(elf);
let elf = 'Arwen';
}
lapland();


Ответ: ReferenceError

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

const obj = {};
obj.value = undefined;
console.log(Object.hasOwn (obj, 'value'));


Ответ: true

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

const obj1 = { a: 1 };
const obj2 = Object.create(obj1);
obj2.b = 2;

console.log(obj2.a, obj2.b);
console.log(obj2.hasOwnProperty('a'));
console.log(Object.getPrototypeOf(obj2) === obj1);


Ответ: 1, 2, false, true

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

let foo = function () {
console.log(1);
};
setTimeout(foo, 1000);
foo = function () {
console.log(2);
};


Ответ: 1

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

console.log("9" > "19");
console.log("09" > "19");


Ответ: true, false

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

console.log(1 + 2 + '1'); 
console.log('1' + 1 + 2);


Ответ: 31, 112

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


var bar = function foo() {};
console. (bar === foo);


Ответ: ReferenceError

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

let obj = {
timeoutId: setTimeout(() =>
console.log('hi');
}, 1000)
};
delete obj.timeoutId;
obj = null;


Ответ: hi

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

const myObject = {};
const key = Symbol('key');
myObject[key] = 'value';
console.log(myObject[Symbol('key')]); console.log(JSON.stringify(myObject));


Ответ: undefined, {}

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

let x = { 
a: 1,
b: 2
};
let y = {
b: 3,
c: 4
};
Object.setPrototypeof(x, y);
console.log(x.b);


Ответ: 2

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

const arr = [1, 2, 3, 4, 5];
const [first, , third, ...rest] = arr;

console.log(first, third, rest);


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

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

const obj = {};
let value = 0;

Object.defineProperty(obj, 'prop', {
get() {
return value;
},
set(newValue) {
value = newValue + 1;
},
configurable: true,
enumerable: true
});

obj.prop = 10;
console.log(obj.prop);


Ответ: 11

JavaScript test | ChatGPT | #JavaScript
Использование Spread Operator для объединения массивов или объектов

Spread Operator (оператор расширения) позволяет развертывать элементы массива или свойства объекта в другой массив или объект.

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

const array = [1, 2, 3, 4, 5];
const result = array.filter(n => n % 2).map(n => n * 2);

console.log(result);


Ответ: [2, 6, 10]

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

class Parent {
static greet() {
return 'Hello from Parent';
}
}

class Child extends Parent {
static greet() {
return super.greet() + ' and Child';
}
}

const childInstance = new Child();
console.log(childInstance.greet);


Ответ: undefined

JavaScript test | ChatGPT | #JavaScript
Использование Higher-Order Functions для обработки массивов

Higher-Order Functions (функции высшего порядка) принимают или возвращают другие функции, и их использование делает код более гибким и функциональным.

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

class Rectangle {
constructor(width, height) {
this.width = width;
this.height = height;
}

get area() {
return this.width * this.height;
}
}

const rectangle = new Rectangle(5, 10);
console.log(rectangle.area());


Ответ: TypeError: rectangle, area is not a function at line 13

JavaScript test | ChatGPT | #JavaScript
Работа с локализацией: перевод и форматирование текста на разных языках

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

Для перевода текста на разные языки в JavaScript можно использовать объект Intl, который предоставляет функциональность для локализации. С помощью объекта Intl можно форматировать числа, даты, валюты и другие типы данных в соответствии с правилами языка и региона.

В данном примере мы создаем объект Intl с помощью конструктора new Intl.NumberFormat(). Мы указываем язык и регион (в данном случае 'en-US' для английского языка в США) и опции форматирования (в данном случае стиль 'currency' и валюту 'USD').

Затем мы используем метод format() объекта Intl для форматирования числа amount в соответствии с указанными опциями. В данном примере мы форматируем число в денежный формат.

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

const array = [1, 2, 3, 4, 5];
const result = array.splice(2, 2, 6, 7);

console.log(array, result);


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

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

function* generateSequence() {
yield 1;
yield 2;
return 3;
}

const generator = generateSequence();
console.log(generator.next());
console.log(generator.next());
console.log(generator.next());


Ответ: { value: 1, done: false }, { value: 2, done: false }, { value: 3, done: true }

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

const obj1 = { a: 1 };
const obj2 = Object.create(obj1);
obj2.b = 2;

const result = Object.entries(obj2).map(([key, value]) => key + value);

console.log(result);


Ответ: ['b2']

JavaScript test | ChatGPT | #JavaScript