As For JS
3.43K subscribers
128 photos
12 videos
4 files
367 links
As For JavaScript...
Обсуждения — @AsForJsTalks
Download Telegram
20-00 По Киеву.
⎡razbor:13⎦ Разбор видео: Выводим Мурыча на чистую воду от Дмитрия Карловского.

По многочисленным просьбам, максимально корректно, разберем видео от автора Мол Дмитрия Карловского.

Прохладные истории с постными лицами и унылый юмор - гарантирован.

Приходите, гарантировать что будет интересно я не могу, но то, что будет над чем подумать - обещаю.

Буду читать чат на YouTube и личку в Telegram.


https://www.youtube.com/watch?v=RrGMG4S0hLQ
👍20🔥75👎2🤡1🤣1
煤渡り
CусуВатари
Гавнюшки (муризм)

СКОРО!
👍38🔥9😍7🌚2🤣2👌1🐳1
Если кому-то нечего делать.

Дана функция:
function doName( theStrName ) {

return (
()=>true
)
}

Функция doName возвращает стрелочную функцию. Код стрелочной функции значения не имеет. Имеет значение то, что это функция.

Придумайте 4+ варианта того, как можно модифицировать код функции doName, чтобы имя возвращаемой стрелочной функции становилось эквивалентным theStrName

var doArrow = doName ( "AnyName" );
doArrow(); // true
doArrow.name === "AnyName" ; // true

var doAnotherArrow = doName ( "AnotherName" );
doAnotherArrow(); // true
doAnotherArrow.name === "AnotherName" ; // true
👍195
игого:
1) Прошли три курса химии
2) впереди лучевая

что это значит:
Пришлось пройти лишний курс (третий) химии
Вероятность ремиссии подтвердилась и она 70+ %

Из положительного:
Парализованную левую часть лица так и не отпустило.


Из отрицательного:
Из-за лишнего курса химии -
у меня не хватает теперь 27 000 гривен (700$) для лучевой и завершение курса.


О ЧЕМ ХОЧУ ПОПРОСИТЬ
Увидите наших - чмокните их в жопу!
Будет трудно - высылайте деньги!
Мочите крабов сопливые медузы!

Разные реквизиты:
Карта Приват UAH: 5168745021397333
Карта Приватr USD: 5168745022222621
Bobrov Maksym


USDT Tron (TRC20): TKoZu59WHiX6L6qvwYTYTsZJerDrnAHBTx

USDT etherium (erc20): 0x75fb8a62dfcf453b2e73f1ef1c407d46f918fffa

TON: UQAGXvuhxg3qU0eFgOxtdDlKXqdp1zPq6yCRSRbRYQClxOzH

bitcoin:bc1q74aru82v4d3alay7p53jdwkmxe4a5gz7fmvfm2?message=AsForJS&time=1686349743

PayPal: demimurych@protonmail.com (Может не у всех работать)

Я точно гарантирую, что Вам за это ничего не будет.

И еще, я очень прошу не репостить это сообщение в других группах.
По крайней мере без моего разрешения.

Эта группа моя, я имею право делать тут что хочу.

Прорвемся котаны!

собрано всего uah:
980 / 27 000
8100 / 27 000
8900 / 27 000
9900 / 27 000
10600 / 27 000
11100 / 27 000
13168 / 27000

13228 / 27 000
19008 / 27 000
22113 / 27000
22713 / 27 000

27 013 / 27000
СОБРАНО


29013 / 27000
ЗАЧИНЕНО

но все равно приятно - куплю себе пицу
коту его курицу - шоб он обожрался.
кадавр желудочно неудовлетворенный
73🙏18🕊7👍3🔥2
Просто для настроения.

Олені, олені — небриті і неголені
Дивні створіння: в них з мозків стирчать коріння
Олені, олені — небриті і неголені — олені

https://www.youtube.com/watch?v=gbF_fwTfZ9U
24👎4👍2🔥1
Сегодня у меня хватило сил посмотреть какие-то комментарии под Видео: ⎡razbor:13⎦ Разбор видео: Выводим Мурыча на чистую воду от Дмитрия Карловского..

И больше всего меня тронул вот комментарий, где человек, как ему показалось, разобрался в сути происходящего:
Поймался Дремурыч! )) "Порядка ключей у пропертис никогда не было и не будет" - ты сам то понял, что сказал? Сам походу не читал спеку, давайте-ка ткнём его бородой в его любимую спецификацию:
в разделе ecma262, #sec-ordinaryownpropertykeys:


он идет одним из самых первых (или последних).

Там же я написал ответ.

Этот комментарий прекресно иллюстрирует тот факт, почему JS нельзя изучать на примере спецификации, когда даже человек который потратил массу времени на написание этого комментария оказался неправ.

О чем я ему и написал в ответе, а именно, что он разбирает только специфический случай методов для которых согласно спецификации характерно гарантирование порядка ключей. Которое появились много позднее.


Особенно следует отметить, использование автором, для подверждения своей позиции цитат не имеющих отношения к официальным истоникам:
While in ES5 explicitly no order has been specified, ES2015 defined an order in certain cases...


И так далее.
👍15🔥3🤡1
15:15 по Киеву
19-15 по Киеву
21-15 по Киеву (Вероятность 1.7)
22-15 по Киеву (Это точно) (;

⎡spec:05⎦ Проблематика или почему язык JavaScript, оказался самым непонятым языком на планете.
Talk is cheap. Show me the code
© Линус Торвальдс

Попытаемся, на примерах, разобраться в том, почему язык JavaScript, оказался самым непонятым языком на планете.

Тайм коды:
00:00:00 Музыка
00:03:28 Приветствие
00:04:40 О чем пойдет речь
00:05:00 К сути

00:26:50 Ответы на вопросы:
00:27:30 Мылятся картинки при transform
00:28:30 О чтении синтаксиса стрелочных функций
00:29:05 Primitive Types и toPrimitive
00:33:40 Можно ли сэкономить на Static Semantics
00:34:00 Сколько нужно времени на чтение спецификации
00:35:10 Почему в JavaScript нет переменных
00:37:30 Говорил ли Брендан о том, что typeof null это ошибка
00:40:40 JS это анархия
00:42:30 Про type Object и прочие типы

00:44:50 Пауза или Мурыч ищет ссылки пруфы
00:54:17 Мурыч нашел и на это не ушло больше часа

00:54:34 Ссылка на блок разработчиков V8 о том, что все Object
00:55:16 Инженеры V8 и Null и Брендан
00:56:35 Почему некоторые компании используют JS для обработки данных
00:57:24 О необходимости аналогий
00:59:02 О резервировании памяти для массива
01:00:05 Снова о чтении спеки
01:03:45 Одно поточный или много поточный
01:05:22 Какие значимые вещи в JS лично для Мурыча появятся в будущем
01:13:30 Какое отношение, статьи в блоге инженеров V8 имеют к тому, что говорит Мурыч


https://www.youtube.com/watch?v=6yd_m64mlv8
🔥26👍75
Задача для Senior JS Developer
из моих архивов собеседований

Напишите код (или опишите принцип), который бы запретил выполнение любого метода любой функции кроме заданного. Например кроме console.log.

Например:
// Ваш код 
{
// внутри этого блока можно вызвать ТОЛЬКО console.log
// и не существует никакой возможности вызвать что-то еще
console.log("Start"); // Работает как ожидается
alert("Yo"); // игнорируется
new Promise(); // игнорируется
setTimeout( ()=>{}); // игнорируется
console.log("End"); // Работает как ожидается
}


То есть при выполнении вышеобозначенного примера, мы увидим в коносли:
Start
End


Подчеркиваю, ограничений на использование любых вызовов не существует. То есть внутри блока допускается использование любой функции или любого внешнего API.

Существует только условие, которое определяет - ЧТО именно разрешено использовать (white list методов или функций) .

Использовать Shafow Realm запрещено. Тогда его просто не было. Да и сейчас он под галкой.
👍12🔥62🐳2👎1
Отгадка на задачу Задача для Senior JS Developer
Напишите код (или опишите принцип), который бы запретил выполнение любого метода любой функции кроме заданного. Например кроме console.log.

// Ваш код 
{
// внутри этого блока можно вызвать ТОЛЬКО console.log
// и не существует никакой возможности вызвать что-то еще
console.log("Start"); // Работает как ожидается
alert("Yo"); // игнорируется
new Promise(); // игнорируется
setTimeout( ()=>{}); // игнорируется
console.log("End"); // Работает как ожидается
}



Решение задачи возможно в non strict mode, с использование with и Proxy:

var theWhiteList = {
console
// , Promise
// , setTimeout
// , alert
};

var doNope = function(){};

var theObj = new Proxy(
theWhiteList
, {
get: ()=> doNope
, has: (theObj, theKey)=>!( theObj[theKey] )
}
);


with ( theObj )
{
console.log("Start"); // Работает как ожидается
alert("Yo"); // игнорируется
new Promise(); // игнорируется
setTimeout( ()=>{ console.log("time"); }); // игнорируется
console.log("End"); // Работает как ожидается
}


Обозначенный выше proof of concept легко адаптируется не только для функциональных обьектов, но и для идентификаторов связанных с прочими типами.

В настоящий момент в спецификацию продвигают Shadow Realm, которые позволят создавать подобные песочницы намного более простым способом.

А так же активно обсуждается тема адаптации with для use strict

with - это единсвенный способ прямой манипуляции контекстом исполнения.


Для чего использовались подобные решения?
для создания песочниц, где необходимо было наложить ограничения на выполнение кода третьих лиц.
👍455👎3🤯2
Не про JS и не про программирование

Внимание:
Для адекватного восприятия следующего - обязательно наденьте шапочку из фольги.

Можно этого и не делать - если Вам нечего защищать.
(Для тех кто не понял - я уже начал и шапочка нужна)


Трудности перевода или Оппенгеймер
Если у Вас есть около 9 часов, когда Ваш моск бесполезен, и вы знаете русский и Украинский, или по крайней мере Английский и русский, очень рекомендую посмотреть фильм Оппенгеймер в двух переводах.

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

Но то и фиг бы с ним, если бы я не считал что интересуюсь квантовой механикой. И даже способен кое что понять на любительском уровне.

Кстати, крайне всем рекомендую послушать пару лекций Семихатова на YouTube. Откроете для себя много нового. Ну например, что кот Шредингера это не про то, что кот находится в двух состояниях одновременно, но про неудачную аналогию, где речь идет о том, как в квантовом мире, процесс измерения, может повлиять на результат самого измерения. Впрочем как и в случае JS. С аналогиями все очень сложно.

Вернемся к квантовой механике. В фильме переодически звучат очень простые термины или концепции отсылающие к ней самой. Так вот, по какой-то мне неведомой причине, русский перевод эти концепции упрощает до уровня плоской земли.

Поверьте мне, я просмотрел три русских перевода. Официальный и два любительских.
Самый простой пример - сцена где Оппенгеймер знакомится с Гезинбергом. И последний сообщает что знаком с монографией Оппенгеймера по молекулярной физике. Русский перевод звучал как - я прочитал вашу статью про молекулы.

Монография и статья.
Молекулярная физика и молекулы.


И такие ляпы на протяжении всего фильма. Почти вся терминология, в русском переводе упрощена до уровня плинтуса. Хотя в оригинале как и в Украинском переводе ничего подобного нет.

Ну да черт с ней с пропагандой и физикой. По сути это же одно и тоже - так ведь?

Больше всего доставил сухой песок, после минимум 48 часового дождя.


*Шапочку из фольги можно снять*

Рискну предположить, что Оппенгеймер, Энштейн, Гейзинберг это не те люди которые не понимали того простого факта, что ядерный синтез будет понятен любому студенту с физтеха.

Создание ядерной бомбы вопрос не Гения, а времени. Современность тому пример. И потому, подавать историю Оппенгеймера как историю человека который переживал о том, что он приложил руку к БИМБЕ - это не уважать этого человека.

Когда Оппенгеймер говорил в фильме Энштейну, о цепной реакции которая уничтожит весь мир - он говорил не о ядерной бимбе. Оппенгеймер вообще об этом никогда не переживал. Он переживал о том, что не смог найти способа, при всем своем влиянии, выстроить этот мир так, чтобы агрессивное невежество, которое получает в руки такой инструмент - не могло его(мир) разрушить.

Оппенгеймер переживал до конца дней, что человечество подошло к той черте, когда плоды научного прогресса могут в секунду уничтожить все человечество и при этом остановить этот самый прогресс теперь, можно только сделав тоже самое - уничтожив все человечество.

А ядрёно-атомная бимба это пшик. Это вам не гипотезу Пуанкаре доказать. Где только разобраться в том, что написано может 5 человек на всей земле. Не говоря уже о том, чтобы понять.

Да и страна, которая прокакала такого гения - вызывает у меня опасения силой до поноса.


Дискас.
👍623🤯3😁2🤡2👎1
Не про JS и не про программистов.
но про хорошее настроение от рассово верной группы - пневмослон.

почему все рассово верные группы пишут такие хорошие песни?

о них я узнал тогда, когда шнур зашкварился типичной рос пропагандой чем вверг меня в уныние и заставил гуглить.

свято место пусто не бывает: пневмослон!

https://youtu.be/-6An7luR9_Q?si=dDlte1_ctTXQdkuO
16🤡9🔥4😁2👍1
Как в вашей душе откликается такая обложка?
🔥91👍22🙏2🤡21🕊1
As For JS
Как в вашей душе откликается такая обложка?
Это обложка не просто так.
Это обложка под рубрику, где нужно будет решить неординарную задачу.

Решение которой зависит от того, насколько человек мыслит нестандартно, или насколько глубоко знает архитектуру языка JS
👍23🔥7🌚1
ша!

с єтого момента я ввожу диктатуру,
и назначаю себя диктатором єтого чата.

всенародно избранным и пожизненно.

как следствие начинаю репрессии в соответствии с тем как зачесалась моя левая пятка


левая пятка у меня чешется от
1) любого упоминания в уничижительной форме Украины, и ее нации

2) языками общения в группе заявляются все которые лично я могу понять. Если я не понимаю - репрессирую

3) писать претензии можно в лигу сексуальных реформ организации озабоченых наций
👌62🤡31🔥19👍17😁1411🕊5👨‍💻2❤‍🔥1🤯1🙏1
As For JS pinned «ша! с єтого момента я ввожу диктатуру, и назначаю себя диктатором єтого чата. всенародно избранным и пожизненно. как следствие начинаю репрессии в соответствии с тем как зачесалась моя левая пятка левая пятка у меня чешется от 1) любого упоминания в уничижительной…»
Предварительно в 17-00 по киеву, будет спонтанная трансляция по поводу вопроса:
господа джсеры, у меня к вам вопрос перфа. на стеке с php у меня есть дефолтные текста в элементах при изначальном рендере страницы. при выборе тарифа, мне надо менять текста на значения взятые из дата-атрибутов кнопки активного тарифа.

но если сняли активное состояние с тарифов, то не выбрано ничего и мне надо вернуть дефолтные значения.

лучше это эти первоначальные текста хранить в отдельном объекте зарендерив inline <script> на бекенде php или брать на js из data-attribute.

Минимальная схема того [...]

https://t.me/AsForJsTalks/75757


так как я на єтом собаку сьел, то не смог отказать себе в удовольствии проговорить всю єту бадягу в уши тем кому єто ненужно.

Речь пойдет о:
1) http кеширование
2) особенности кешированя js кода браузером
3) service worker-ы
4) json
👍51🔥28
Что сегодня посмотреть
Life of a Script [eng]

английский простой.
очень рекомендую к просмотру.

делается вводная в общий процесс работы с JS кодом.

о том что все обьект,
о байткоде
о гарбаж коллекторе
введение в оптимизации turboFan
...

свидетелям однопоточного JavaScript особенно доставит в конце ремарка о работе над спецификацией с целью улучшения паралелизма в JavaScript

https://youtu.be/veYjbF1rt5o?si=xjEf5IRfUxTzLkH0
🔥33👍63🌚1
Сегодня отмечается День уважения к кошке - этот праздник призван отметить роль, которую котярышники играют в жизни людей 👀

Моделечка: Туча - кот.
67👍6👨‍💻2