JavaScript test
9.58K subscribers
3.12K photos
16 videos
4.81K links
Javascript и все что с ним связано

Ссылка: @Portal_v_IT

Сотрудничество: @oleginc
Download Telegram
❗️Что будет на выходе:

const flags = {
READ: 0b0001,
WRITE: 0b0010,
EXECUTE: 0b0100,
DELETE: 0b1000,
};

const userPermissions = flags.READ | flags.WRITE | flags.EXECUTE;
const adminPermissions = userPermissions | flags.DELETE;

const canDelete = (adminPermissions & flags.DELETE) !== 0;
const canExecute = (userPermissions & flags.EXECUTE) !== 0;
const readOnly = userPermissions ^ flags.WRITE;

console.log(canDelete, canExecute, readOnly, adminPermissions >> 1);

Ответ: true true 5 7

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

try {
const obj = null;
obj.property = 'value';
} catch (e) {
console.log(e.name);
}

try {
undeclaredVariable;
} catch (e) {
console.log(e.name);
}

try {
JSON.parse('invalid json');
} catch (e) {
console.log(e.name);
}

Ответ: TypeError ReferenceError SyntaxError

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

const a = { value: 1 };
const b = Object.create(a);
b.value = 2;

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

Ответ: 2, 1

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

const target = { name: 'Maya', age: 25 };
const handler = {
get(obj, prop) {
if (prop in obj) {
return obj[prop];
}
return `Property '${prop}' not found`;
},
set(obj, prop, value) {
if (typeof value === 'string') {
obj[prop] = value.toUpperCase();
} else {
obj[prop] = value;
}
return true;
}
};
const proxy = new Proxy(target, handler);
proxy.city = 'tokyo';
console.log(proxy.name);
console.log(proxy.city);
console.log(proxy.country);

Ответ: Maya TOKYO Property 'country' not found


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

function main({ x, y } = { x: 1, y: 2 }) {
console.log(x, y);
}

main({ x: 5 });

Ответ: 5, undefined

JavaScript test | #JavaScript & Max
ЭТИ ЗНАНИЯ упростят тебе жизнь

С момента выхода ChatGPT хайп вокруг нейросетей только растет, а вместе с ним — и количество каналов со вторичным контентом. Найти среди этого шума что-то стоящее становится всё труднее.

Я собрал тг-каналы, которые читаю сам, и попросил ChatGPT найти похожие (промпт — на скрине).

В итоге получилась качественная подборка авторских каналов. Внутри:
— Вайб-кодинг и бесплатные уроки автоматизации
— Нейрогенерация фото и видео
— AI-новости + подборки полезных промптов


Подписывайтесь на лучших AI-экспертов, которые сэкономят вам годы самостоятельного поиска и месяцы платного обучения!
❗️Что будет на выходе:

const matrix = [
[2, 4],
[6, 8],
];

const result = matrix.reduceRight((acc, row) => acc.concat(row.map(num => num * 2)), []);

console.log(result);

Ответ: [12, 16, 4, 8]

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

const regex = /a/g;
const str = 'banana';
console.log(str.match(regex));

Ответ: ['a', 'a']

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
❗️Что будет на выходе:

const regex = /a/g;
const str = 'banana';
console.log(str.match(regex));

Ответ: ['a', 'a']

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

const a = async () => {
return Promise.reject('rejected');
};

a().catch(error => console.log(error));
console.log('done');

Ответ: 'done', 'rejected'


JavaScript test | #JavaScript & Max
Сидеть и работать в корпорации — страшно, жизнь-то мимо проходит. Уходить строить бизнес — страшно, а вдруг прогорит. Один из вариантов — разрабатывать свой пет-проект по вечерам. Многие успешные компании, например, Twitter, создавались именно так. Это не значит, что ваш проект обязательно заработает миллиарды, но заработать больше, чем в найме, и получить ценный опыт — вполне реально.

Перед началом разработки появляется множество вопросов, например:

– Как выбрать идею для пет-проекта?
– Что нужно знать про маркетинг?
– Как запуститься и довести до первых продаж не имея бюджета на рекламу?

В телеграм-канале «Твой пет проект», Михаил Табунов делится своим опытом с разработчиками и менеджерами.

Он рассказывает, где искать идею для нового проекта, что нужно знать о маркетинге, как запустить стартап и привлечь первых 10 клиентов, а также о многих других важных вещах.

Подписывайтесь на «Твой пет проект», получайте пользу от практиков рынка!

Реклама. ИП Табунов Михаил Валерьевич ИНН 773379585100. erid: 2Vtzqw5HMMB
❗️Что будет на выходе:

console.log('1');

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

Promise.resolve().then(() => console.log('3'));

queueMicrotask(() => console.log('4'));

setTimeout(() => {
console.log('5');
Promise.resolve().then(() => console.log('6'));
}, 0);

console.log('7');

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

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

function Person(name) {
this.name = name;
this.sayName = () => console.log(this.name);
}

const person1 = new Person('David');
const person2 = { name: 'Not David', sayName: person1.sayName };

person2.sayName();

Ответ: David


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

const wm = new WeakMap();
const obj1 = { name: 'first' };
const obj2 = { name: 'second' };

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

const keys = [];
for (let key of wm) {
keys.push(key);
}

console.log(keys.length);
console.log(wm.has(obj1));
console.log(wm.get(obj2));

console.log(sum);

Ответ: TypeError: vm is noy iterable

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

let a = 1;
setTimeout(() => {
a = 2;
}, 0);
console.log(a);

Ответ: 1


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

class DataProcessor {
constructor(value) {
this.value = value;
}

transform(fn) {
return new DataProcessor(fn(this.value));
}

getValue() {
return this.value;
}
}

const multiply = x => x * 2;
const add = x => x + 10;
const square = x => x * x;

const result = new DataProcessor(5)
.transform(multiply)
.transform(add)
.transform(square)
.getValue();

console.log(result);

Ответ: 400

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)

Ответ: true
6 9


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);

Ответ: 18 [0, 1, 2]

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}`);
}

Ответ: TypeError: Counter: 3
JavaScript test | #JavaScript & Max