JavaScript test
10.2K 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 obj1 = {
a: 1,
method() {
return this.a;
}
};

const obj2 = Object.create(obj1);
obj2.a = 777;

console.log(obj2.method());


Ответ:
777

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

function multiply(a, b) {
if (b === 0) {
return 0;
} else if (b > 0) {
return a + multiply(a, b - 1);
} else {
return -multiply(a, -b);
}
}

console.log(multiply(300, 0));


Ответ:
0

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

let weakmap = new WeakMap();

let obj1 = {};
let obj2 = {};

weakmap.set(obj1, 'value1');
weakmap.set(obj2, 'value2');

obj1 = null;

console.log(weakmap.has(obj1));

Ответ:
false

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

function Person(name, age) {
this.name = name;
this.age = age;
}

Person.prototype.getDetails = function() {
return this.name + ' is ' + this.age + ' years old.';
};

const john = new Person('John', 25);
console.log(john.getDetails());

Ответ:
John is 25 years old

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

var data=[1,2,3,4,5];
var filterData=a.filter(function(x){return x<=5});
console.log(filterData);

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

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

var names=["John","Tom","Jerry","Minne","Alice","othername..."];
for (var i=0;i<5;i++)
console.log(names[~~(names.length*Math.random())]);

Ответ:
Вывод 5-ти случайных элементов массива names

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

const obj1 = { a: 1, b: 2 };
const obj2 = { b: 3, c: 4 };
const mergedObj = { ...obj1, ...obj2 };
console.log(mergedObj);

Ответ:
{ a: 1, b: 3, c: 4 }

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

function removeOdd(arr){
//remove odd number of arr
for (var i=arr.length;i>=0;i--)
if (arr[i]%2) arr.splice(i,1)
return arr;
}
console.log(removeOdd([1,2,3,4,5]))
console.log(removeOdd([1,3,5,7,9]))

Ответ:
[ 2, 4 ]
[]


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

let person = {
name: 'Alice',
age: 30,
valueOf: function() {
return this.age;
}
};

let result = person + 10;
console.log(result);

Ответ:
40

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

var a=[1,2,3,4,5];
console.log(a.some(x=>x>4));
console.log(a.some(x=>x>5));

Ответ:
true
false


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

const numbers = [1, 2, 3, 4, 5];

const result = numbers
.filter(num => num % 2 === 0)
.map(num => num * num)
.reduce((acc, num) => acc + num, 0);

console.log(result);

Ответ:
20

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

var arr1=[1,2,3,4,5]
arr1.reverse()
console.log(arr1)
var arr2=['a','b','c']
arr2.reverse()
console.log(arr2)

Ответ:
[ 5, 4, 3, 2, 1 ]
[ 'c', 'b', 'a' ]


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

const sym1 = Symbol('description');
const sym2 = Symbol('description');

const obj = {
[sym1]: 'value1',
[sym2]: 'value2'
};

console.log(obj[sym1]);

Ответ:
'value1'

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

var x = 1;
function changeX() { x = 2; }
changeX();
console.log(x);


Ответ: 2

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

const array = [1, 2, 3, 4];
const result = array.reduceRight((acc, val) => acc - val);

console.log(result);

Ответ: -2

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

const weakMap = new WeakMap();
const array = [1, 2, 3];
const obj = {};

weakMap.set(obj, array);

const result = weakMap.get(obj).reduce((acc, val) => acc + val);

console.log(result);

Ответ: 6

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

function trickyScope() {
var x = 10;
if (true) {
let x = 5;
console.log(x);
}
console.log(x);
}

trickyScope();


Ответ: 5 10

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

const string = "JavaScript test";
const result = string.replace(/l/g, "");
console.log(result);


Ответ: JavaScript test

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.b.c);

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

JavaScript test | #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);


Ответ: 256

JavaScript test | #JavaScript