❓Что будет на выходе?
console.log(typeof Object);
console.log(typeof Object());
Ответ:
JavaScript test | ChatGPT | #JavaScript
❓Что будет на выходе?
const EventEmitter = require("events");
const emitter = new EventEmitter();
emitter.once("test", v => console.log(v));
emitter.on("test", v => console.log(v));
for (let i = 0; i < 3; i++) {
emitter.emit("test", i);
}Ответ:
JavaScript test | ChatGPT | #JavaScript
❓Что будет на выходе?
const arr = new Array(3);
for (const i in arr) {
console.log(i);
}
Ответ:
JavaScript test | ChatGPT | #JavaScript
❓Что будет на выходе?
const arr = Array.from({ length: 3 }, (_, i) => i * 2);
for (const i of arr) {
console.log(i);
} Ответ:
JavaScript test | ChatGPT | #JavaScript
❓Что будет на выходе?
const target = {
age: 30
};
const handler = {
get: function(obj, prop) {
return obj[prop]++;
}
};
const proxy = new Proxy(target, handler);
console.log(proxy.age);
console.log(target.age);
console.log(proxy.age);Ответ:
JavaScript test | ChatGPT | #JavaScript
Итерация по свойствам объекта
Данный цикл позволяет перебрать все свойства объекта
JavaScript test | ChatGPT | #JavaScript
Данный цикл позволяет перебрать все свойства объекта
person и вывести их ключи и значения.JavaScript test | ChatGPT | #JavaScript
❓Что будет на выходе?
let obj1 = { key: 'value1' };
let obj2 = { key: 'value2' };
const weakMap = new WeakMap();
weakMap.set(obj1, 'data1');
weakMap.set(obj2, 'data2');
obj1 = null;
setTimeout(() => {
console.log(weakMap.has(obj1));
console.log(weakMap.has(obj2));
}, 100);Ответ:
JavaScript test | ChatGPT | #JavaScript
Объекты как аргументы функций
Объект
JavaScript test | ChatGPT | #JavaScript
Объект
person передается в функцию printInfo, где выводится информация о человеке.JavaScript test | ChatGPT | #JavaScript
❓Что будет на выходе?
var a = 1;
function b() {
a = 10;
return;
function a () {}
}
b();
console.log(a);
Ответ:
JavaScript test | ChatGPT | #JavaScript
❓Что будет на выходе?
const target = {
secret: "hidden",
reveal: "nothing"
};
const handler = {
get: function(obj, prop, receiver) {
if (prop === "secret") {
return "revealed";
}
return Reflect.get(...arguments);
}
};
const proxy = new Proxy(target, handler);
with (proxy) {
console.log(secret);
console.log(reveal);
}Ответ:
JavaScript test | ChatGPT | #JavaScript
Динамические ключи
Ключи объекта могут быть созданы динамически с использованием вычисляемых свойств.
JavaScript test | ChatGPT | #JavaScript
Ключи объекта могут быть созданы динамически с использованием вычисляемых свойств.
JavaScript test | ChatGPT | #JavaScript
❓Что будет на выходе?
const num = 10;
const add = () => {
console.log(num + num);
};
(function () {
const num = 5;
add();
})();
Ответ:
JavaScript test | ChatGPT | #JavaScript
❓Что будет на выходе?
function* evenNumbers() {
let num = 0;
while (true) {
yield num;
num += 2;
}
}
const gen = evenNumbers();
const evens = Array.from({ length: 4 }, () => gen.next().value).map(n => n + 1);
console.log(evens);Ответ:
JavaScript test | ChatGPT | #JavaScript
Object.create()
Метод
JavaScript test | ChatGPT | #JavaScript
Метод
Object.create() позволяет создать новый объект с указанным прототипом. В данном случае, myCar наследует метод startEngine от объекта car.JavaScript test | ChatGPT | #JavaScript
❓Что будет на выходе?
const hello = () => console.log("Hello");
const a = { hello };
const b = JSON.parse(JSON.stringify(a));
b.hello();Ответ:
JavaScript test | ChatGPT | #JavaScript
❓Что будет на выходе?
canst a = Object.create({ x: 1 }, {});
a.__proto__.y = 2;
const b = JSON.parse(JSON.stringify(a));
console.log(a.y, b.y);Ответ:
JavaScript test | ChatGPT | #JavaScript
❓Что будет на выходе?
const num = 9;
const str = num.toString().padStart(3, "0");
console.log(str);
Ответ:
JavaScript test | ChatGPT | #JavaScript
❓Что будет на выходе?
console.log(0x2 + 2);
console.log(2 + 0x2);
Ответ:
JavaScript test | ChatGPT | #JavaScript
❓Что будет на выходе?
console.log(0.1 + 0.2 == 0.3);
Ответ:
JavaScript test | ChatGPT | #JavaScript
❓Что будет на выходе?
function* numberDoubler(arr) {
for (const num of arr) {
yield num * 2;
}
}
const result = [...numberDoubler([1, 2, 3])].some(n => n % 4 === 0);
console.log(result);Ответ:
JavaScript test | ChatGPT | #JavaScript
❓Что будет на выходе?
function* idGenerator() {
let id = 1;
while (true) {
yield id++;
}
}
const gen = idGenerator();
const ids = Array.from({ length: 3 }, () => gen.next().value).map(id => `ID${id}`);
console.log(ids);Ответ:
JavaScript test | ChatGPT | #JavaScript