Size: a a a

JavaScript Noobs — сообщество новичков

2021 May 11

IS

Ilya Sinkin in JavaScript Noobs — сообщество новичков
как билдите?
источник

h

hilarion_von_juzefin... in JavaScript Noobs — сообщество новичков
yarn start
источник

IS

Ilya Sinkin in JavaScript Noobs — сообщество новичков
cra?
источник

h

hilarion_von_juzefin... in JavaScript Noobs — сообщество новичков
не знаю что ето такое
источник

VD

Van Darkholme in JavaScript Noobs — сообщество новичков
является ли эта функция чистой, ведь она может вернуть undefined. Может ли чистая функция вернуть null / undefined?
const getObjProp = (obj, prop) => obj[prop]
источник

N

Nelkor in JavaScript Noobs — сообщество новичков
Является, может
источник

VD

Van Darkholme in JavaScript Noobs — сообщество новичков
спасибо
источник

BB

Bogdan Bida in JavaScript Noobs — сообщество новичков
Чистая функция вернёт один и тот же результат для одинаковых аргументов

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

VD

Van Darkholme in JavaScript Noobs — сообщество новичков
о, кстати хороший вопрос
источник

N

Nelkor in JavaScript Noobs — сообщество новичков
Нельзя
источник

BB

Bogdan Bida in JavaScript Noobs — сообщество новичков
Типа
const a = { b: 2 };
Func(a, 'b');

a.b = 3;
Func(a, 'b);

Вот. Аргументы одни и теже, состояние одного из аргументов уже разное

Как-бы по факту это чистая функция, но на деле я думаю нет. Нужно принимать примитивные аргументы или немутирующие либо же делать глубокую проверку и считать один и тот же объект разным если поменялось хоть одно поле
источник

N

Nelkor in JavaScript Noobs — сообщество новичков
По факту, но не на деле ☝️
источник

N

Nelkor in JavaScript Noobs — сообщество новичков
Одинаковые ссылки на разные объекты — это разные аргументы
источник

BB

Bogdan Bida in JavaScript Noobs — сообщество новичков
Так объект тот же, у него поле поменялось
источник

BB

Bogdan Bida in JavaScript Noobs — сообщество новичков
Ну хотя да, это уже просто формулировка
источник

ОБ

Олег Башкин... in JavaScript Noobs — сообщество новичков
Мутации внешних объектов явно вне зоны ответственности чистых функций. Она оба раза возвращает значение свойства b объекта a
источник

N

Nelkor in JavaScript Noobs — сообщество новичков
К сожалению, в JS невозможно передать в функцию объект не по ссылке. Так что если пришёл тот же объект, но с другими значениями в полях, то это уже другой аргумент
источник

AV

Alex Vasilchenko in JavaScript Noobs — сообщество новичков
Всем привет
Я хочу реализовать класс, который будет навешивать обработчики событий на эл-ы DOM-дерева и хранить в себе состояния этих же элементов (открыто, закрыто, выбрано и т.д.)
Т.е. это будет выглядеть как-то так:

class Manager {
   constructor(params) {
       this.params = params;
   }
   addEventListenerToBlock(){
       document.getElementById('id').addEventListener('click', function (){...});
   }
}

Как отследить, что я не навешу сразу несколько одинаковых слушателей на один элемент?
Я нашёл решения только для откладки кода в браузере, а вот как получить это в коде не знаю. Будет ли грамотным решением просто завести булеву переменную на каждый слушатель и инвертировать её, когда слушатель "навешан"?
источник

ОБ

Олег Башкин... in JavaScript Noobs — сообщество новичков
Как вариант ты можешь перед добавлением листнера удалять старый с помощью removeEventListener

https://developer.mozilla.org/ru/docs/Web/API/EventTarget/removeEventListener
источник

SM

Stephen Mallory in JavaScript Noobs — сообщество новичков
Добрый день. Кто что-нибудь знает/работал со статическими файлами в вебпаке?

Мне не понятно зачем нужно копировать faveicon.ico через вебпак-плагин (в папку dist для продакшена) на момент разработки. Какой в этом смысл, если можно напрямую указать в /src/ внутри index.html через <link rel="" href=""> ?
источник