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 outer() {
var x = 2;

function inner() {
let x = 4;

function deeper() {
console.log(x);
}

return deeper;
}

return inner();
}

const fn = outer();
fn();


Ответ: 4

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

const data = [
{ id: 1, name: 'Alice', age: 17, gender: 'Female' },
{ id: 2, name: 'Bob', age: 30, gender: 'Male' },
{ id: 3, name: 'Charlie', age: 25, gender: 'Female' },
{ id: 4, name: 'David', age: 35, gender: 'Male' },
{ id: 4, name: 'John', age: 31 },
];

const result = data.filter(person => person.gender === 'Male').map(person => person.age).reduce((acc, age) => acc + age, 0);

console.log(result);


Ответ: 65

JavaScript test | #JavaScript
Узнай подходящую тебе карьеру за 5 минут.

Онлайн-школа участник проекта "Сколково" создала уникальный инструмент профориентации, который раскроет ваш потенциал. Простой тест с вариантами ответа, менее чем из 20 вопросов.

В конечный результат вошли только самые востребованные профессии для 2025 года, большинство специальностей из сферы IT и Дизайна, именно в них на сегодня наибольшие доходы.

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

Реклама. Информация о рекламодателе по ссылкам в посте.
❗️Что будет на выходе?

const obj = {
a: 1,
b: function() {
return () => {
return this.a;
};
},
c: function() {
return function() {
return this.a;
};
}
};

const arrowFunc = obj.b();
const regularFunc = obj.c();

console.log(arrowFunc());
console.log(regularFunc());


Ответ: 1, undefined

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

var arr=[1,2,3,4,5];
console.log(arr.map((prev,curr)=>prev+curr));
console.log(arr.reduce((a,b)=>a+b));
console.log(arr.filter((a,b)=> (a + b) <= 5));


Ответ: [ 1, 3, 5, 7, 9 ]
15
[ 1, 2, 3 ]


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

const secretData = { password: 'abc123' };
const mySet = new WeakSet();
mySet.add(secretData);

delete secretData.password;

const checkAccess = (obj) => {
console.log(mySet.has(obj));
};

checkAccess(secretData);
checkAccess({ password: 'abc123' });


Ответ: true false

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

var a = 0, b = 0, arr = [3, 6, 9, 6, 9, 3];
var data = arr.some((x, i)=>{
a = arr[i];
b = arr[i + 1];
return a + b == 15
})
console.log(data)
console.log(a, b)


Ответ: true
6 9


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

let a = 'a';
let b = 'c';

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

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


Ответ: undefined
'e'
'a'
'c'


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

async function test() {
console.log('1');

setTimeout(() => {
console.log('2');
}, 0);

await Promise.resolve();
console.log('3');

new Promise(resolve => {
console.log('4');
resolve();
}).then(() => {
console.log('5');
});

console.log('6');
}

test();
console.log('7');


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

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

function getArr() {
return Array.from(arguments);
}

var data = [4, 5, 6];

const result = getArr(...[1, 2, 3], ...data);

console.log(result);


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

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

function getCity(person) {
return person?.address?.city ?? 'Unknown';
}

const data = [
null,
{ name: 'Alice' },
{ name: 'Bob', address: null },
{ name: 'Charlie', address: { street: '123 Main' } },
{ name: 'David', address: { city: 'Boston' } }
];

const cities = data.map(getCity);
console.log(cities);


Ответ: ['Unknown', 'Unknown', 'Unknown', 'Unknown', 'Boston']

JavaScript test | #JavaScript
Мои коллеги из Яндекса создали сильнейшие IT каналы 🔥

Наше кредо — программирование не сложно, просто никто не объяснял нормально.


🐍 Ghostly Python - Разбираем код, автоматизируем рутину, пишем ботов, скрипты и полезные утилиты. Все что нужно для уверенного старта в программировании на Python.

☕️ Easy Java - вскрываем Java изнутри. Все тонкости этого универсального языка в одном канале, врывайся!

😎 IT Syndicate - гигабайты свежего материала по всем направлениям. GameDev, InfoSec, Frontend - и это лишь малая часть..
Please open Telegram to view this post
VIEW IN TELEGRAM
❗️Что будет на выходе?

const weakMap = new WeakMap();
const array = [{}, {}, {}, [], {"s": 1}];

array.forEach(obj => weakMap.set(obj, obj));
const result = array.map(obj => weakMap.get(obj) == obj);

console.log(result);


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

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

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

console.log(result);


Ответ: [ 3, 6, 9, 12, 15, 18 ]

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

const p1 = Promise.resolve(1);
const p2 = new Promise(resolve => resolve(2));
const p3 = new Promise(resolve => setTimeout(() => resolve(3), 0));
const p4 = Promise.reject(4).catch(err => err);

Promise.all([p1, p2, p3, p4])
.then(values => {
const result = values.reduce((acc, val) => {
return acc + val;
}, 0);
console.log(result);
})
.catch(err => console.log('Error:', err));


Ответ: 10

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

function delayedLog(item) {
setTimeout(() => {
console.log(item);
}, 1000);
}
for (var i = 0; i < 3; i++) {
delayedLog(i);
}


Ответ: 0 1 2

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

console.log(typeof null);
console.log(typeof function () {});
console.log(typeof {});
console.log(typeof 1);
console.log(typeof '');
console.log(typeof true);
console.log(typeof '{}');


Ответ: 'object'
'function'
'object'
'number'
'string'
'boolean'
'string'


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

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

const symbols = Object.getOwnPropertySymbols(obj);
const keys = Object.keys(obj);
const allProps = Reflect.ownKeys(obj);

console.log(symbols.length, keys.length, allProps.length);


Ответ: 2 1 3

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

function* generator() {
yield 1;
yield* [2, 3];
yield* '4';
}

const gen = generator();
for (const value of gen) {
console.log(value);
}


Ответ: 1
2
3
'4'


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

function createCounter() {
let count = 0;

return function() {
count++;
return count;
};
}

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

counter1();
counter1();
counter2();

const result = counter1() + counter2();
console.log(result);


Ответ: 5

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

const weakMap = new WeakMap();
const obj = {};
const gen = (function* () {
yield 'value1';
yield 'value2';
yield* ['value1', 'value2']
})();

weakMap.set(obj, gen.next().value);

console.log(weakMap.get(obj));
console.log(gen.next().value);
console.log(gen.next().value);


Ответ: 'value1'
'value2'
'value1'


JavaScript test | #JavaScript