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

Ссылка: @Portal_v_IT

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

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

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

const array = Array.from({ length: 5 }, () => Math.random() > 0.5);

console.log(array);

Ответ: An array of 5 random true/false values

JavaScript test | #JavaScript
Please open Telegram to view this post
VIEW IN TELEGRAM
❗️Что будет на выходе:

const obj = {
name: 'Sarah',
getName() { return this.name; },
getNameArrow: () => this.name
};

const { getName, getNameArrow } = obj;
const boundGetName = obj.getName.bind(obj);

console.log(getName());
console.log(getNameArrow());
console.log(boundGetName());
console.log(obj.getName());
console.log(obj.getNameArrow());

Ответ: undefined undefined Sarah Sarah undefined

JavaScript test | #JavaScript
Please open Telegram to view this post
VIEW IN TELEGRAM
❗️Что будет на выходе:

const array = Array.from({ length: 5 }, () => Math.random() > 0.5);

console.log(array);

Ответ: An array of 5 random true/false values

JavaScript test | #JavaScript
Please open Telegram to view this post
VIEW IN TELEGRAM
❗️Что будет на выходе:

const memoryLeak = () => {
const cache = new Map();
const weakCache = new WeakMap();

const objKey = { id: 123 };
const data = { name: 'User data', value: 42 };

cache.set(objKey, data);
weakCache.set(objKey, data);

// Simulate removing reference to key
const result = { map: cache.has(objKey), weakMap: weakCache.has(objKey) };
// objKey = null; // This would be an error, as const can't be reassigned

return result;
};

console.log(memoryLeak());

Ответ: { map: true, weakMap: true }

JavaScript test | #JavaScript
Please open Telegram to view this post
VIEW IN TELEGRAM
❗️Что будет на выходе:

async function foo() {
console.log('Start');
await Promise.resolve().then(() => {
console.log('Inside Promise');
});
console.log('End');
}

foo();
console.log('Outside');

Ответ: Start, Outside, Inside, Promise, End

JavaScript test | #JavaScript
Please open Telegram to view this post
VIEW IN TELEGRAM
❗️Что будет на выходе:

const symbol1 = Symbol('desc1');
const symbol2 = Symbol('desc2');
const myObject = {};
myObject[symbol1] = 'Value1';
myObject[symbol2] = 'Value2';
let output = '';
for (let key in myObject) {
output += myObject[key] + ' ';
}
output += Object.getOwnPropertySymbols(myObject).length;
console.log(output);

Ответ: 2

JavaScript test | #JavaScript
Please open Telegram to view this post
VIEW IN TELEGRAM
❗️Что будет на выходе:

const getValue = (x) => {
console.log(`Getting: ${x}`);
return x;
};

const obj = { name: null };

const result = obj.name || getValue('default') && getValue('final');
console.log(`Result: ${result}`);

Ответ: Getting: default Getting: final Result: final

JavaScript test | #JavaScript
Please open Telegram to view this post
VIEW IN TELEGRAM
❗️Что будет на выходе:

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 | #JavaScript
Please open Telegram to view this post
VIEW IN TELEGRAM
❗️Что будет на выходе:

function createCounter() {
let count = 0;
return function(increment = 1) {
count += increment;
return count;
};
}

const counter1 = createCounter();
const counter2 = createCounter();

console.log(counter1());
console.log(counter1(5));
console.log(counter2(3));
console.log(counter1());
console.log(counter2());

Ответ: 1 6 3 7 4

JavaScript test | #JavaScript
Please open Telegram to view this post
VIEW IN TELEGRAM
❗️Что будет на выходе:

Promise.resolve(1)
.then(r => Promise.reject(r))
.catch(console.log)
.then(() => console.log(2));

Ответ: 1, 2

JavaScript test | #JavaScript
Please open Telegram to view this post
VIEW IN TELEGRAM
❗️Что будет на выходе:

let obj1 = { name: 'Sarah' };
let obj2 = { name: 'Mike' };
let obj3 = { ref: obj1 };

obj1.circular = obj1;
obj2.partner = obj3;
obj3.partner = obj2;

let weakMap = new WeakMap();
weakMap.set(obj1, 'data1');
weakMap.set(obj2, 'data2');

obj1 = null;
obj2 = null;

console.log(weakMap.has(obj3.ref));
console.log(obj3.partner.name);

Ответ: true Mike

JavaScript test | #JavaScript
Please open Telegram to view this post
VIEW IN TELEGRAM
❗️Что будет на выходе:

const arr = [1, 2, 3, 4, 5];
const result = arr
.map(x => x * 2)
.filter(x => x > 5)
.reduce((acc, val) => {
return acc + (val % 3 === 0 ? val : 0);
}, 0);

console.log(result);

Ответ: 6

JavaScript test | #JavaScript
Please open Telegram to view this post
VIEW IN TELEGRAM
РОЗЫГРЫШ НА 15 МЛН: 🫨 300+ ТОПОВЫХ ДЕВАЙСОВ И ПОДПИСОК !🥳

❤️💙 31 декабря в 21:00 по МСК в ТЕХБРИФ разыграем:

- 10 шт. iPhone 17 Pro Max
- 10 шт. MacBook Pro 16″
- 20 шт. OLED-телевизоров Samsung 77"
- 100 шт. годовых подписок на ChatGPT Plus
- 30 шт. PlayStation 5 Pro
- 25 шт. Apple Vision Pro

😎+3 СЕКРЕТНЫХ СУПЕР ПРИЗА

🏆 Условие одно: Подписаться на канал ТЕХБРИФ
🎄 Заявки принимаются моментально

🎁 Б
олее 300 призов на канал с 10к подписчиками! РЕАЛЬНЫЙ ШАНС ЕСТЬ У КАЖДОГО!

🙀 ЗАБИРАЙ ОГРОМНЫЙ ШАНС ПОБЕДИТЬ К НОВОМУ ГОДУ 😻
❗️Что будет на выходе:

const a = document.createElement("a");
a.id = "test1";
a.href = "test2";
document.body.appendChild(a);
console.log(window.test1);

Ответ: http://.../test2

JavaScript test | #JavaScript
Please open Telegram to view this post
VIEW IN TELEGRAM
❗️Что будет на выходе:

function Person(name) {
this.name = name;
this.sayName = () => console.log(this.name);
}

const person1 = new Person('David');
const person2 = { name: 'Not David', sayName: person1.sayName };

person2.sayName();
Ответ: David

JavaScript test | #JavaScript
Please open Telegram to view this post
VIEW IN TELEGRAM
❗️Что будет на выходе:

const target = { name: 'Sarah', age: 25 };

const handler = {
get(obj, prop) {
if (prop in obj) {
return obj[prop];
}
return `Property '${prop}' not found`;
},
set(obj, prop, value) {
obj[prop] = value.toString().toUpperCase();
return true;
}
};

const proxy = new Proxy(target, handler);
proxy.city = 'boston';
console.log(proxy.name);
console.log(proxy.city);
console.log(proxy.country);

Ответ: Sarah BOSTON Property 'country' not found

JavaScript test | #JavaScript
Please open Telegram to view this post
VIEW IN TELEGRAM
❗️Что будет на выходе:

function Person(name) {
this.name = name;
this.sayName = () => console.log(this.name);
}

const person1 = new Person('David');
const person2 = { name: 'Not David', sayName: person1.sayName };

person2.sayName();

Ответ: David

JavaScript test | #JavaScript
Please open Telegram to view this post
VIEW IN TELEGRAM