Pull to refresh
0
Karma
0
Rating
Евгений Кутищев @Cake_Seller

Разработчик переднего конца

  • Followers 10
  • Following 10

Почему пора перестать использовать JavaScript IIFE

переменная count является частью замыкания и не объявлена вне замыкания

Верно. Так же верно то что, переменная count объявлена снаружи функции, которую возвращает замыкание.

https://en.wikipedia.org/wiki/Side_effect_(computer_science)
Первый абзац:
function or expression is said to have a side effect if it modifies some state variable value(s) outside its local environment, that is to say has an observable effect besides returning a value (the main effect) to the invoker of the operation

В нашем фрагменте когда функция, которая возвращается замыканием, изменяет состояние (переменную count), которая объявлена все этой функции. Это называется побочным эффектом.

Или вот отсюда: Побочный эффект (программирование)
Если вызвать функцию с побочным эффектом дважды с одним и тем же набором значений входных аргументов, может случиться так, что в качестве результата будут возвращены разные значения.

Если вы вызовем функцию id() из нашего примера дважды (с одним и тем же набором аргументов; если быть точным не передавая никаких аргументов), то она вернёт нам разный результат. Это нарушает принцип ФП. Причиной является то, что функция id() имеет побочный эффект.

Почему пора перестать использовать JavaScript IIFE

Или например вычисление значения для ключа при написании объекта литералом.

Для этого напрашиваются template strings. Какие с ними могут быть нюансы?

Почему пора перестать использовать JavaScript IIFE

не нравится прототипное наследование, имеющее контекст только в виде самого объекта и вечного this, и не позволяющее собрать объект несколькими конструкторами и делать в него примеси или замены полей без всякой иерархии


А как бы вам нравилось чтобы это работало? Интересно понять как вы видите удачное решение этой задачи.

Почему пора перестать использовать JavaScript IIFE

В примере в статье как раз показан пример. Замыкание возвращает функцию, которая изменяет значение переменной count, объявленой снаружи этой функции. Это и есть побочный эффект в терминологи функционального программирования.

Есть ли жизнь под Windows 98, часть первая — про железо

Я не в курсе норма ли это, но у меня встроенная звуковуха в материнской плате Gigabyte GA-Z170-HD3 (весьма современное устройство по сравнению с тем что в этом треде обсуждается) тоже транслирует в аудио выход шум при перемещении мышки. А вы про первый пентиум говорите :)

Как работает JS: обзор движка, механизмов времени выполнения, стека вызовов

Как по мне стоило бы всё таки упомянуть про Web Workers, чтобы было понятно, что асинронный код не единственный способ выполнять задачи требующие много процессорного времени не блокируя основной поток браузера и тем самым не блокируя ввод/вывод, рендеринг.

Security Week 32: В репозиторий npm проник шпион, Disney запретят следить за детьми, Juniper запатчил годовалый баг

Не берусь утверждать, но осмелюсь предположить — пароль от аккаунта npm, с помощью аккаунта можно обновлять свои пакеты на npm. Если повезет украсть пароль от аккаунта владельца популярного пакета, например expess, то в него можно загрузить зловредный код и наделать делов.

JavaScript как явление

впрочем как и не настоящий ООП язык ( привет классы JS )

А я вот с вами не соглашусь. Нельзя сказать что JS не OOP язык потому что в нём нет классового наследования. Прототипное наследование вполне укладывается в парадигму OOP.

JavaScript как явление

Деление на ноль в JS вернет Infinity ;-)

Windows Mobile 6.5 официально анонсирован

Ахаха! Спустя шесть лет…
Страдаю без стилуса. Шучу, нормально работается.

Марк Андрессен: почему оптимизм — всегда выигрышная стратегия

В венчурном инвестировании людей, которым очень крупно повезло 10 раз поряд возможно не найдётся ни одного человека (согласно теории вероятностей), шансы этого весна низки (ну тут конечно всё зависит от того что называть «крупно повезло»). На то оно и венчурное инвестирование — это как покер (или нарды) — если плохо играешь, в итоге ты обанкротишься. Так что если ты занимаешься венчурным инвестирование достаточно долго — то ты либо не плох в этом деле, либо у тебя просто много денег и мало ума чтобы понять, что ты работаешь в убыток.

Марк Андрессен: почему оптимизм — всегда выигрышная стратегия

Согласен с Марком — по моему технический прогресс это всегда здорово. Пускай для отдельно взятой группы людей это плохо, но для большенства это хорошо. Это ведет к снижению стоимость на товары и услуги или повышению их качества. И мне не понятно как объясняют всю позицию люди которые выступают против модернизации и технического процесса.

Вообще темы затронутые в интервью весьма интересны. Кто знает какие щас существуют веяния в современной экономике на тему «как сделать так чтоб всем жилось хорошо». Проэкт «Венера» Жака Фреско я считаю неосуществимым. Есть какие-то с более реальными механизмами реализации?

Хороших книг пост

Не зря вы поставили Мартина Идена на первое место. Моё любимое произведение, три раза прочитал :)
А вот «Портрет Дориана Грея» не впечатлил совершенно.

Руководство по WebKit-атрибуту srcset в тэге img

а как вам такие значеия devicePixelRatio: 1.325, 1.6, 1.7, 2.37? :)
Источник — en.wikipedia.org/wiki/List_of_displays_by_pixel_density

Простой универсальный переключатель на JavaScript

Вообще, если уж сильно смущает этот фрагмент, то можно так:

while( (' ' + el.className + ' ').indexOf(' jsw ') > -1 )

Обзор нового Kindle Touch от Amazon

В статье не упомянут ещё один большой недостаток — нельзя просматривать страницы в альбомном режиме? т.е. повернуть страницу на 90°. Это очень и очень затрудняет чтение PDF-ок. Если в альбомном режиме ещё можно кое-как читать PDF-ки, то в портретном шрифт становится ну очень маленьким; это конечно ещё зависит от размера шрифта непосредственно в PDF файле, но зачастую шрифт получает очень мелким.

Именно поэтому вчера купил Kindle Keyboard, а не Touch.

Я веб-разработчик, дизайнер, etc…

Занимаюсь фронт-энд веб разработкой — kutischev.name

История одного покерного бота

Вздор. Покер — это игра, где мат ожидание зависит от умения игрока. Играя с более слабыми игроками на длинной дистанции вы будите в плюсе.

Вскрытие Pentium III, фотографии под микроскопом

Помнится мне как Умпутун в одном из выпусков Радио-Т сказал, что советсике инжинеры даже 80386 процессор микрофрезой по слоям разбирали и изучали. Но вот вышло из этого что-то или нет, он не сказал.

Управляемые рыбки

Сомнительно, чтоб гелий не просачивался. Чтобы он не просачивался должен быть очень плотный материал.

Information

Rating
Does not participate
Location
Днепр, Днепропетровская обл., Украина
Date of birth
Registered
Activity