Size: a a a

2019 June 02

YK

Yuri Katkov in javascript_ru
вот да!
источник

DE

Denis Efremov in javascript_ru
Yuri Katkov
это не чистая функция, потому что в зависимости от того, чему равен this она вернет разный результат. Получается ее out определяется чем-то кроме ее аргументов.
Но какой смысл в функции, если она ничего не делает?
источник

YK

Yuri Katkov in javascript_ru
Denis Efremov
Но какой смысл в функции, если она ничего не делает?
ну мы ж не про смысл рассуждаем, а про чистоту
источник

k

kolay` in javascript_ru
Denis Efremov
Но какой смысл в функции, если она ничего не делает?
Она принимает параметры и мутирует их
источник

DE

Denis Efremov in javascript_ru
kolay`
Она принимает параметры и мутирует их
Это грязно
источник

k

kolay` in javascript_ru
Не
источник

YK

Yuri Katkov in javascript_ru
не мутирует, а на основе их что-то производит
источник

YK

Yuri Katkov in javascript_ru
если у тебя функция выдает console.log или что-нить подвязывает в DOM - она, как я понимаю, тоже не чистая.
источник

DE

Denis Efremov in javascript_ru
Yuri Katkov
не мутирует, а на основе их что-то производит
Но ведь ты сказал, что функция перестает быть чистой, если способна возвращать разный результат?
источник

YK

Yuri Katkov in javascript_ru
Denis Efremov
Но ведь ты сказал, что функция перестает быть чистой, если способна возвращать разный результат?
разный результат на основании одних и тех же аргументов
источник

YK

Yuri Katkov in javascript_ru
ну то есть f(2,3) всегда должна возвращать например 6
источник
2019 June 03

YK

Yuri Katkov in javascript_ru
если же при одном this f(2,3) возвращает 6, а при другом 12 - тут грязь
источник

DE

Denis Efremov in javascript_ru
Yuri Katkov
разный результат на основании одних и тех же аргументов
Но если a будет одним и тем же, то и результат будет один
источник

YK

Yuri Katkov in javascript_ru
Denis Efremov
Но если a будет одним и тем же, то и результат будет один
лол, дык ни this, ни this.a не являются АРГУМЕНТАМИ функции f
источник

DE

Denis Efremov in javascript_ru
Yuri Katkov
лол, дык ни this, ни this.a не являются АРГУМЕНТАМИ функции f
Почему это? Представь что this - аргумент по умолчанию
источник

YK

Yuri Katkov in javascript_ru
ни щитается
источник

k

kolay` in javascript_ru
Denis Efremov
Почему это? Представь что this - аргумент по умолчанию
Он может иметь разное состояние
источник

k

kolay` in javascript_ru
Независимо от функции
источник

IN

Igor N in javascript_ru
Denis Efremov
Почему это? Представь что this - аргумент по умолчанию
Почитай определение чистой функции
источник

DE

Denis Efremov in javascript_ru
При одном и том же this функция вернет один и тот же результат
источник