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

Ссылка: @Portal_v_IT

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

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

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

const range = Array.from({ length: 5 }, (_, index) =>
index + 1);
console.log(range);

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

JavaScript test | #JavaScript
❗️Что будет на выходе:
async function fetchData() {
const promise = new Promise(resolve => {
setTimeout(() => resolve('first'), 2000);
});

console.log('start');
const result = await promise;
console.log(result);
console.log('end');
}

fetchData();
const x = 'after';
console.log(x);

Ответ:
start alert first end

JavaScript test | #JavaScript
❗️Что будет на выходе:
const map = new Map();
const key1 = {};
const key2 = key1;

map.set(key1, "Value for key1");
map.set(key2, "Value for key2");

console.log(map.get(key2));
console.log(map.get(key1));

Ответ:
Value for key2
Value for key2


JavaScript test | #JavaScript
❗️Что будет на выходе:
function* counter() {
let count = 1;
while (true) {
const reset = yield count;
count = reset ? 1 : count + 1;
}
}

const gen = counter();
console.log(gen.next().value);
console.log(gen.next().value);
console.log(gen.next(true).value);
console.log(gen.next().value);

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

JavaScript test | #JavaScript
❗️Что будет на выходе:
function foo() {
var secondDigit = 1
let firstDigit = secondDigit
firstDigit++
return firstDigit
}

foo()
console.log(typeof firstDigit)
console.log(typeof secondDigit)

Ответ:
undefined
undefined

JavaScript test | #JavaScript
❗️Что будет на выходе:
var a=[1,3,6,9,12,24,36,72,15]
var b=a.filter(x=>x%2==0&&x%3==0&&x%4==0)
console.log(b)

Ответ:
[ 12, 24, 36, 72 ]

JavaScript test | #JavaScript
❗️Что будет на выходе:
const user = {
profile: {
name: "Alice",
settings: null
},
getPreferences() {
return this.profile.settings?.theme || "default";
}
};

const admin = {
profile: {
name: "Admin"
},
getPreferences() {
return this.profile.settings?.theme || "default";
}
};

console.log(user.getPreferences());
console.log(admin.getPreferences());
console.log(user.profile.extra?.id?.toString());

Ответ:
default default undefined

JavaScript test | #JavaScript
❗️Что будет на выходе:
const arr = [3, 8, 12];
const even = (elem) => elem % 2 === 0;

console.log(arr.map(even));

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

JavaScript test | #JavaScript
❗️Что будет на выходе:
function Animal(name) {
this.name = name;
}

Animal.prototype.speak = function() {
return `${this.name} makes a noise`;
};

function Dog(name) {
Animal.call(this, name);
}

Dog.prototype = Object.create(Animal.prototype);
Dog.prototype.constructor = Dog;

Dog.prototype.speak = function() {
return `${this.name} barks`;
};

const animal = new Animal('Animal');
const dog = new Dog('Rex');

console.log(dog instanceof Animal);

Ответ:
true

JavaScript test | #JavaScript
❗️Что будет на выходе:
const a = [1,2,3];
const b = a.reverse();
const c = a.reverse();

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

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

JavaScript test | #JavaScript
❗️Что будет на выходе:
const obj = { x: 1, y: 2 };
let {x: a, y: b } = obj;
a = 2;
console.log(a, obj.y);

Ответ:
2 2

JavaScript test | #JavaScript
❗️Что будет на выходе:
const company = {
name: 'TechCorp',
departments: {
engineering: {
head: { name: 'Alice', contact: null },
staff: 50
},
marketing: null
}
};

const engineeringContact = company.departments.engineering.head.contact;
const marketingHead = company.departments.marketing?.head?.name;
const financeStaff = company?.departments?.finance?.staff ?? 'Not available';

console.log(`${engineeringContact} - ${marketingHead} - ${financeStaff}`);

Ответ:
null - undefined -Not available

JavaScript test | #JavaScript
❗️Что будет на выходе:
const obj = Object.freeze({
a: [1, 2, 3],
b: {
c: 4
}
});

obj.a.push(obj.b);
obj.b.c = 5;

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

Ответ:
[ 1, 2, 3, { c: 5 } ]
undefined

JavaScript test | #JavaScript
❗️Что будет на выходе:
function A() {}
function B() {}

A.prototype = B.prototype = {};

let a = new A();
let b = new B();

console.log( b instanceof A );

Ответ:
true

JavaScript test | #JavaScript
❗️Что будет на выходе:
var a = 1;

const arrowQuiz = () => {
console.log(a);
};

arrowQuiz();
var a = 2;
arrowQuiz();

Ответ:
1
2

JavaScript test | #JavaScript
❗️Что будет на выходе:
const userMap = new WeakMap();

const user1 = { name: 'Alice' };
const user2 = { name: 'Bob' };

userMap.set(user1, { visits: 10 });
userMap.set(user2, { visits: 5 });

// Later in the code...
const entries = [];
for (const obj of [user1, null, user2]) {
if (obj !== null && userMap.has(obj)) {
entries.push(userMap.get(obj).visits);
}
}

console.log(entries.reduce((sum, visits) => sum + visits, 0));

Ответ:
15

JavaScript test | #JavaScript
❗️Что будет на выходе:
let x = 7;
function addSeven(num) {
return num + 7;
}
x = (++x, x = addSeven(x), x *= 2, x += 5, x += 10);
console.log(x);

Ответ:
45

JavaScript test | #JavaScript
❗️Что будет на выходе:
const promise = new Promise((resolve, reject) => {
setTimeout(() => resolve(3), 1000);
});

promise
.then(result => {
console.log(result);
return result * 3;
})
.then(result => {
console.log(result);
return new Promise(resolve => setTimeout(() => resolve(result * 3), 1000));
})
.then(result => {
console.log(result);
});

Ответ:
3
9
27

JavaScript test | #JavaScript
❗️Что будет на выходе:
function outer() {
let x = 10;

function inner() {
console.log(x);

if(true) {
let x = 20;
console.log(x);
}

console.log(x);
}

inner();
}

outer();

Ответ:
10 20 10

JavaScript test | #JavaScript
❗️Что будет на выходе:
const ws = new WeakSet();
const obj1 = { id: 1 };
const obj2 = { id: 2 };

ws.add(obj1);
ws.add(obj2);
ws.delete(obj1);

const obj3 = { id: 2 };

console.log([
ws.has(obj2),
ws.has(obj1),
ws.has(obj3),
ws.has({ id: 2 })
]);

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

JavaScript test | #JavaScript
❗️Что будет на выходе:
const nums = [1, 2, 3, 4];
const res = nums.reduce((acc, val) => acc + val, 2);
console.log(typeof res);

Ответ:
number

JavaScript test | #JavaScript