❗️Что будет на выходе:
Ответ:[ 3, 7, 15, 15 ]
JavaScript test | #JavaScript
const weakMap = new WeakMap();
const arr = [1, 2, 4, 8];
const objs = arr.map(n => ({ n }));
objs.forEach((obj, index) => weakMap.set(obj, arr.slice(0, index + 2)));
const result = objs.map(obj => weakMap.get(obj).reduce((acc, num) => acc + num, 0));
console.log(result);
Ответ:
JavaScript test | #JavaScript
❗️Что будет на выходе:
Ответ:{ even: 13, odd: 15 }
JavaScript test | #JavaScript
const numbers = [1, 2, 3, 4, 5, 6];
const result = numbers.reduce((acc, num) => {
if (num % 2 === 0) {
acc.even += num;
} else {
acc.odd *= num;
}
return acc;
}, { even: 1, odd: 1 });
console.log(result);
Ответ:
JavaScript test | #JavaScript
❗️Что будет на выходе:
Ответ:[2, 'Not found', 2, 6]
JavaScript test | #JavaScript
const target = { a: 1, b: 2 };
const handler = {
get(obj, prop) {
return prop in obj ? obj[prop] * 2 : 'Not found';
}
};
const proxy = new Proxy(target, handler);
// Add a property to the original target
target.c = 3;
// Attempt to access properties through proxy and Reflect
console.log([
proxy.a,
proxy.z,
Reflect.get(target, 'b'),
Reflect.get(proxy, 'c')
]);Ответ:
JavaScript test | #JavaScript
❗️Что будет на выходе:
Ответ:Admin: John
JavaScript test | #JavaScript
type User = {
id: number;
name: string;
role?: 'admin' | 'user';
};
function processUser(user: Partial<User>): string {
const defaultUser: User = {
id: 0,
name: 'Guest',
role: 'user'
};
const mergedUser = { ...defaultUser, ...user };
if (mergedUser.role === 'admin') {
return `Admin: ${mergedUser.name}`;
}
return `User: ${mergedUser.name} (ID: ${mergedUser.id})`;
}
console.log(processUser({ name: 'John', role: 'admin' }));Ответ:
JavaScript test | #JavaScript
❗️Что будет на выходе:
Ответ:'value'
JavaScript test | #JavaScript
const secretKey = Symbol('key');
const secretValue = 'value';
function Store() {
this[secretKey] = secretValue;
}
Store.prototype.get = function(key) {
return this[key];
};
const store = new Store();
const revealed = store.get(secretKey);
console.log(revealed);Ответ:
JavaScript test | #JavaScript
❗️Что будет на выходе:
Ответ:{ useCache: true, timeoutMs: 0, maxRetries: false }
JavaScript test | #JavaScript
function processConfig(config) {
const cache = config.cache ?? true;
const timeout = config.timeout ?? 1000;
const retries = config.retries ?? 3;
return {
useCache: cache,
timeoutMs: timeout,
maxRetries: retries
};
}
const result = processConfig({ timeout: 0, retries: false });
console.log(result);Ответ:
JavaScript test | #JavaScript
❗️Что будет на выходе:
Ответ:2
Foo { bar: 1 }
JavaScript test | #JavaScript
function Foo() {
this.bar = 1;
}
Foo.prototype.bar = 2;
const foo = new Foo();
console.log(foo);Ответ:
Foo { bar: 1 }
JavaScript test | #JavaScript
❗️Что будет на выходе:
Ответ:NaN
NaN
JavaScript test | #JavaScript
const obj = {
value: 42,
getValue() {
return Math.max(this.value, obj.getValue);
}
};
const obj2 = {
value: 25,
getValue: obj.getValue
};
console.log(obj.getValue());
console.log(obj2.getValue());Ответ:
NaN
JavaScript test | #JavaScript
❗️Что будет на выходе:
Ответ:{ a: 0, b: '', c: 'null', d: 'undefined', comparsion: false}
JavaScript test | #JavaScript
function processInput(userInput) {
const defaultValue = 'default';
const value1 = userInput?.value ?? defaultValue;
const value2 = userInput?.value || defaultValue;
const result = {
a: 0 ?? 'zero',
b: '' ?? 'empty',
c: null ?? 'null',
d: undefined ?? 'undefined',
comparison: value1 === value2
};
console.log(result);
}
processInput({ value: '' });Ответ:
❗️Что будет на выходе:
Ответ:3
[ 3, 15, 27 ]
JavaScript test | #JavaScript
const matrix = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9],
];
let columnSums = [];
for (let i = 0; i < matrix[0].length; i++) {
let sum = 0;
for (let j = 0; j < matrix.length; j++) {
sum += matrix[i][i];
}
columnSums.push(sum);
}
console.log(columnSums);
Ответ:
[ 3, 15, 27 ]
❗️Что будет на выходе:
Ответ:[ 4, 6 ]
JavaScript test | #JavaScript
const obj = { a: 2, b: 4, c: 6 };
const result = Object.values(obj).filter((acc, curr) => acc * curr, 2);
console.log(result);Ответ:
❗️Что будет на выходе:
Ответ:['Book', 'Laptop']
JavaScript test | #JavaScript
class ShoppingCart {
constructor() {
if (ShoppingCart.instance) {
return ShoppingCart.instance;
}
this.items = [];
ShoppingCart.instance = this;
}
addItem(item) {
this.items.push(item);
}
getItems() {
return [...this.items];
}
}
const cart1 = new ShoppingCart();
const cart2 = new ShoppingCart();
cart1.addItem('Book');
cart2.addItem('Laptop');
console.log(cart1.getItems());Ответ:
❗️Что будет на выходе?
Ответ:6
JavaScript test | #JavaScript
const numbers = [1, 2, 3, 4, 5];function recursiveMaxSubarraySum(nums, startIndex = 0, currentSum = 0, maxSum = -Infinity) {
if (startIndex === nums.length) {
return maxSum;
}
currentSum = Math.max(nums[startIndex], currentSum + nums[startIndex]);
maxSum = Math.max(currentSum, maxSum);
return recursiveMaxSubarraySum(nums, startIndex + 1, currentSum, maxSum);
}
const result = recursiveMaxSubarraySum([-2, 1, -3, 4, -1, 2, 1, -5, 4]);
console.log(result);Ответ:
JavaScript test | #JavaScript
❗️Что будет на выходе?
Ответ:undefined
JavaScript test | #JavaScript
const obj = { a: 1 };
const { b } = obj;
console.log(b);Ответ:
JavaScript test | #JavaScript
❗️Что будет на выходе?
Ответ:iPhone is now on (model: 13 Pro)
JavaScript test | #JavaScript
function Device(name) {
this.name = name;
this.isOn = false;
}
Device.prototype.turnOn = function() {
this.isOn = true;
return `${this.name} is now on`;
};
function Smartphone(name, model) {
Device.call(this, name);
this.model = model;
}
Smartphone.prototype = Object.create(Device.prototype);
Smartphone.prototype.constructor = Smartphone;
Smartphone.prototype.turnOn = function() {
const result = Device.prototype.turnOn.call(this);
return `${result} (model: ${this.model})`;
};
const myPhone = new Smartphone('iPhone', '13 Pro');
console.log(myPhone.turnOn());Ответ:
JavaScript test | #JavaScript
❗️Что будет на выходе?
Ответ:4
JavaScript test | #JavaScript
function outer() {
var x = 2;
function inner() {
let x = 4;
function deeper() {
console.log(x);
}
return deeper;
}
return inner();
}
const fn = outer();
fn();Ответ:
JavaScript test | #JavaScript
❗️Что будет на выходе?
Ответ:65
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);
Ответ:
JavaScript test | #JavaScript
Узнай подходящую тебе карьеру за 5 минут.
Онлайн-школа участник проекта "Сколково" создала уникальный инструмент профориентации, который раскроет ваш потенциал. Простой тест с вариантами ответа, менее чем из 20 вопросов.
В конечный результат вошли только самые востребованные профессии для 2025 года, большинство специальностей из сферы IT и Дизайна, именно в них на сегодня наибольшие доходы.
Переходите по специальной ссылке, получите карьерную консультацию в подарок, и разберите индивидуально ваш комфортный переход в новую профессию.
Реклама. Информация о рекламодателе по ссылкам в посте.
Онлайн-школа участник проекта "Сколково" создала уникальный инструмент профориентации, который раскроет ваш потенциал. Простой тест с вариантами ответа, менее чем из 20 вопросов.
В конечный результат вошли только самые востребованные профессии для 2025 года, большинство специальностей из сферы IT и Дизайна, именно в них на сегодня наибольшие доходы.
Переходите по специальной ссылке, получите карьерную консультацию в подарок, и разберите индивидуально ваш комфортный переход в новую профессию.
Реклама. Информация о рекламодателе по ссылкам в посте.
❗️Что будет на выходе?
Ответ:1, undefined
JavaScript test | #JavaScript
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());Ответ:
JavaScript test | #JavaScript
❗️Что будет на выходе?
Ответ:[ 1, 3, 5, 7, 9 ]
15
[ 1, 2, 3 ]
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));
Ответ:
15
[ 1, 2, 3 ]
JavaScript test | #JavaScript