❗️Что будет на выходе:
Ответ:true
6 9
JavaScript test | #JavaScript & Max
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)
Ответ:
6 9
JavaScript test | #JavaScript & Max
❗️Что будет на выходе:
Ответ:18 [0, 1, 2]
JavaScript test | #JavaScript & Max
const numbers = [1, 2, 3, 4, 5];
const result = numbers
.map(n => n * 2)
.filter(n => n > 5)
.reduce((acc, n, index) => {
acc.sum += n;
acc.indices.push(index);
return acc;
}, { sum: 0, indices: [] });
console.log(result.sum);
console.log(result.indices);
Ответ:
JavaScript test | #JavaScript & Max
❗️Что будет на выходе:
Ответ:TypeError: Counter: 3
JavaScript test | #JavaScript & Max
"use strict";
function createCounter() {
let count = 0;
return {
increment() { count++; },
get value() { return count; },
toString() { return `Counter: ${count}`; }
};
}
const counter = createCounter();
counter.increment();
counter.increment();
counter.increment();
try {
counter.value = 99;
} catch (e) {
console.log(`${e.constructor.name}: ${counter}`);
}
Ответ:
JavaScript test | #JavaScript & Max
❗️Что будет на выходе:
Ответ:20 20 21 20 calls: 2
JavaScript test | #JavaScript & Max
const memoize = (fn) => {
const cache = new Map();
return (...args) => {
const key = JSON.stringify(args);
if (cache.has(key)) {
return cache.get(key);
}
const result = fn(...args);
cache.set(key, result);
return result;
};
};
let callCount = 0;
const expensiveMultiply = memoize((a, b) => {
callCount++;
return a * b;
});
console.log(expensiveMultiply(4, 5));
console.log(expensiveMultiply(4, 5));
console.log(expensiveMultiply(3, 7));
console.log(expensiveMultiply(4, 5));
console.log(`calls: ${callCount}`);
Ответ:
JavaScript test | #JavaScript & Max
❗️Что будет на выходе:
Ответ:count=3, ttl=3600, max=100
JavaScript test | #JavaScript & Max
class Registry {
static #instances = new Map();
static #count = 0;
static defaultTTL;
static maxSize;
static {
Registry.defaultTTL = 3600;
Registry.maxSize = 100;
Registry.#instances.set("__init__", { ts: 0 });
Registry.#count = Registry.#instances.size;
}
static register(key) {
if (Registry.#count >= Registry.maxSize) return false;
Registry.#instances.set(key, { ts: Registry.defaultTTL });
Registry.#count++;
return true;
}
static info() {
return `count=${Registry.#count}, ttl=${Registry.defaultTTL}, max=${Registry.maxSize}`;
}
}
Registry.register("service-a");
Registry.register("service-b");
console.log(Registry.info());
Ответ:
JavaScript test | #JavaScript & Max
⚡️В России запустили первую онлайн-магистратуру по искусственному интеллекту
Её создали Университет Иннополис и Зерокодер, обучивший работе с ИИ более 15 000 человек. Для рынка это большой прорыв – раньше такой программы просто не было.
Что даёт магистратура лично вам:
- Вы запускаете собственный ИИ-продукт за время учёбы – он же становится дипломной работой;
- Осваиваете ИИ, no-code и вайб-кодинг без программирования, техническая база не нужна;
- Получаете диплом магистра государственного образца и отсрочку от армии;
- Учитесь онлайн из любого города, без отрыва от работы;
- Попадаете в среду практиков: основатели, венчурные инвесторы, выпускник Y Combinator; практика – в Т-Банке, Яндексе, Сбере.
Программа платная. Но чтобы разобраться, подходит ли она вам, поступать прямо сейчас не нужно.
7 июля в 13:00 МСК пройдёт бесплатный День открытых дверей. На нём выпускники и студенты лично расскажут, как собрали свои продукты – среди них вирусный ИИ-сервис и B2B-платформа, которой уже пользуются 70 компаний. Приёмная комиссия ответит на ваши вопросы и разберёт детали поступления.
Никаких обязательств: приходите, узнайте и оцените возможности – для этого День открытых дверей и проводится.
Мест на потоке осталось всего 9, к августу их не останется вовсе. Поэтому анонсируем заранее – разберитесь 7 июля.
Регистрация бесплатная по ссылке.
Её создали Университет Иннополис и Зерокодер, обучивший работе с ИИ более 15 000 человек. Для рынка это большой прорыв – раньше такой программы просто не было.
Что даёт магистратура лично вам:
- Вы запускаете собственный ИИ-продукт за время учёбы – он же становится дипломной работой;
- Осваиваете ИИ, no-code и вайб-кодинг без программирования, техническая база не нужна;
- Получаете диплом магистра государственного образца и отсрочку от армии;
- Учитесь онлайн из любого города, без отрыва от работы;
- Попадаете в среду практиков: основатели, венчурные инвесторы, выпускник Y Combinator; практика – в Т-Банке, Яндексе, Сбере.
Программа платная. Но чтобы разобраться, подходит ли она вам, поступать прямо сейчас не нужно.
7 июля в 13:00 МСК пройдёт бесплатный День открытых дверей. На нём выпускники и студенты лично расскажут, как собрали свои продукты – среди них вирусный ИИ-сервис и B2B-платформа, которой уже пользуются 70 компаний. Приёмная комиссия ответит на ваши вопросы и разберёт детали поступления.
Никаких обязательств: приходите, узнайте и оцените возможности – для этого День открытых дверей и проводится.
Мест на потоке осталось всего 9, к августу их не останется вовсе. Поэтому анонсируем заранее – разберитесь 7 июля.
Регистрация бесплатная по ссылке.
❗️Что будет на выходе:
Ответ:10 26 missing:ghost true false
JavaScript test | #JavaScript & Max
const handler = {
get(target, prop, receiver) {
if (prop in target) {
return Reflect.get(target, prop, receiver) * 2;
}
return `missing:${prop}`;
},
set(target, prop, value) {
if (typeof value !== "number") {
throw new TypeError("Only numbers allowed");
}
Reflect.set(target, prop, value + 10);
return true;
},
has(target, prop) {
return prop.startsWith("x") ? false : prop in target;
},
};
const store = new Proxy({ xray: 5, zoom: 8 }, handler);
store.nova = 3;
console.log(store.xray);
console.log(store.nova);
console.log(store.ghost);
console.log("zoom" in store);
console.log("xray" in store);
Ответ:
JavaScript test | #JavaScript & Max
❗️Что будет на выходе:
Ответ:-256 38
JavaScript test | #JavaScript & Max
const compose = (...fns) => x => fns.reduceRight((acc, fn) => fn(acc), x);
const pipe = (...fns) => x => fns.reduce((acc, fn) => fn(acc), x);
const double = x => x * 2;
const addTen = x => x + 10;
const square = x => x ** 2;
const negate = x => -x;
const composed = compose(negate, square, addTen, double);
const piped = pipe(negate, square, addTen, double);
const val = 3;
console.log(composed(val)); // compose: right-to-left
console.log(piped(val)); // pipe: left-to-right
Ответ:
JavaScript test | #JavaScript & Max
❗️Что будет на выходе:
Ответ:true true false true true
JavaScript test | #JavaScript & Max
class Session {
#id;
constructor(id) {
this.#id = id;
}
getId() {
return this.#id;
}
}
const activeSessions = new WeakSet();
const s1 = new Session("alpha");
const s2 = new Session("beta");
let s3 = new Session("gamma");
activeSessions.add(s1);
activeSessions.add(s2);
activeSessions.add(s3);
console.log(activeSessions.has(s1));
console.log(activeSessions.has(s3));
activeSessions.delete(s2);
console.log(activeSessions.has(s2));
try {
activeSessions.add("invalid");
} catch (e) {
console.log(e instanceof TypeError);
}
console.log(activeSessions.has(s1));
Ответ:
JavaScript test | #JavaScript & Max
❗️Что будет на выходе:
Ответ:20 90 true false 240
JavaScript test | #JavaScript & Max
const handler = {
get(target, prop, receiver) {
if (prop in target) {
return Reflect.get(target, prop, receiver) * 2;
}
return Reflect.get(target, prop, receiver);
},
set(target, prop, value, receiver) {
if (typeof value !== "number") return false;
return Reflect.set(target, prop, value * 3, receiver);
},
has(target, prop) {
return prop.startsWith("x") && Reflect.has(target, prop);
},
};
const obj = new Proxy({ x1: 10, y1: 20 }, handler);
obj.x2 = 15;
obj.y2 = 40;
console.log(obj.x1);
console.log(obj.x2);
console.log("x1" in obj);
console.log("y1" in obj);
console.log(obj.y2);
Ответ:
JavaScript test | #JavaScript & Max
❗️Что будет на выходе:
Ответ:5 A:1 B:11
JavaScript test | #JavaScript & Max
function* range(start, end) {
while (start < end) {
yield start++;
}
}
function* labeled(prefix, gen) {
for (const val of gen) {
yield `${prefix}:${val}`;
}
}
function* pipeline() {
yield* labeled("A", range(1, 4));
yield* labeled("B", range(10, 12));
}
const results = [...pipeline()];
console.log(results.length, results[0], results[results.length - 1]);
Ответ:
JavaScript test | #JavaScript & Max
❗️Что будет на выходе:
Ответ:1998 Toyota Supra 4 true true
JavaScript test | #JavaScript & Max
function Vehicle(make, model, year) {
this.make = make;
this.model = model;
this.year = year;
this.describe = function () {
return `${this.year} ${this.make} ${this.model}`;
};
}
Vehicle.prototype.age = function (currentYear) {
return currentYear - this.year;
};
const car = new Vehicle("Toyota", "Supra", 1998);
const truck = new Vehicle("Ford", "Raptor", 2021);
console.log(car.describe());
console.log(truck.age(2025));
console.log(car.constructor === Vehicle);
console.log(Object.getPrototypeOf(car) === Vehicle.prototype);
Ответ:
JavaScript test | #JavaScript & Max
Forwarded from Находки Программиста
Цена: ~6500₽
Рейтинг: 4.8
Отзывов: 503
Портативный монитор 15.6" с IPS FHD (1920×1080) и Ultra HDR обеспечивает яркое и четкое изображение с широкими углами обзора. Оснащен матовым антибликовым экраном, защитой зрения Low Blue Light и Flicker-Free. Тонкий (8.9 мм) и легкий (697 г), комплектуется чехлом-подставкой. Подключается через USB-C и mini HDMI, совместим с ноутбуками, ПК, смартфонами, PS5, Xbox и Nintendo Switch. Поддерживает режимы дублирования и расширения экрана, работает по Plug & Play без установки драйверов.
#монитор #laptomo
Еще товары: Находки Программиста
Please open Telegram to view this post
VIEW IN TELEGRAM
❗️Что будет на выходе:
Ответ:13 [ 13, 16, 13 ]
JavaScript test | #JavaScript & Max
function makeCounter(start = 0, step = 1) {
let count = start;
const history = [];
return {
increment() {
count += step;
history.push(count);
return this;
},
decrement() {
count -= step;
history.push(count);
return this;
},
getHistory: () => history,
getCount: () => count,
};
}
const counter = makeCounter(10, 3);
counter.increment().increment().decrement();
console.log(counter.getCount());
console.log(counter.getHistory());
Ответ:
JavaScript test | #JavaScript & Max
❗️Что будет на выходе:
Ответ:true
6 9
JavaScript test | #JavaScript & Max
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)
Ответ:
6 9
JavaScript test | #JavaScript & Max
❗️Что будет на выходе:
Ответ:true true false false 1
JavaScript test | #JavaScript & Max
let obj = { name: 'Sarah', age: 25 };
let weakMap = new WeakMap();
let map = new Map();
weakMap.set(obj, 'weak reference');
map.set(obj, 'strong reference');
console.log(weakMap.has(obj));
console.log(map.has(obj));
obj = null;
console.log(weakMap.has(null));
console.log(map.has(null));
console.log(map.size);
Ответ:
JavaScript test | #JavaScript & Max
❗️Что будет на выходе:
Ответ:[2, 4, 6]
JavaScript test | #JavaScript & Max
const weakMap = new WeakMap();
const objs = [{}, {}, {}];
objs.forEach((obj, index) => weakMap.set(obj, index + 1));
const result = objs.filter(obj => weakMap.has(obj)).map(obj => weakMap.get(obj) * 2);
console.log(result);
Ответ:
JavaScript test | #JavaScript & Max
❗️Что будет на выходе:
Ответ:3
JavaScript test | #JavaScript & Max
function createCounter() {
let count = 0;
return {
increment() {
return ++count;
},
reset() {
const oldCount = count;
count = 0;
return oldCount;
}
};
}
const counterA = createCounter();
const counterB = createCounter();
counterA.increment();
counterA.increment();
counterB.increment();
const result = counterA.reset() + counterB.reset();
console.log(result);
Ответ:
JavaScript test | #JavaScript & Max
❗️Что будет на выходе:
Ответ:1, 5, 3, 4, 2
JavaScript test | #JavaScript & Max
console.log(1);
setTimeout(() => console.log(2), 0);
Promise.resolve()
.then(() => {
console.log(3);
return Promise.resolve(4);
})
.then(console.log);
console.log(5);
Ответ:
JavaScript test | #JavaScript & Max
❗️Что будет на выходе:
Ответ:Script Start, Async Start, Script End, Timeout 1, Async End, Timeout 2
JavaScript test | #JavaScript & Max
async function asyncFunc() {
console.log('Async Start');
await new Promise(resolve => setTimeout(resolve, 100));
console.log('Async End');
}
console.log('Script Start');
asyncFunc();
setTimeout(() => console.log('Timeout 1'), 50);
setTimeout(() => console.log('Timeout 2'), 150);
console.log('Script End');
Ответ:
JavaScript test | #JavaScript & Max
❗️Что будет на выходе:
Ответ:
words1:[ 'My', 'name', 'is' ]
words2:[ 'My', 'name', 'is', 'John' ]
JavaScript test | #JavaScript & Max
var str="My name is John";
var words1=str.split(" ",3);
console.log("words1:",words1);
var words2=str.split(" ",5);
console.log("words2:",words2);
Ответ:
words1:[ 'My', 'name', 'is' ]
words2:[ 'My', 'name', 'is', 'John' ]
JavaScript test | #JavaScript & Max