Size: a a a

Node.js — русскоговорящее сообщество

2020 April 05

VK

Vitaliy Kostetskiy in Node.js — русскоговорящее сообщество
Господа, кто функциональщики, помогите начинающему осознать мощь рекурсивную
делаю todolist функционально, нужно каждому новому таску давать идентификатор последний+1
как мне без стейта сделать ф-цию idGenerator, которая при каждом следующем вызове будет возвращать следующее число
idGenerator() // 0
idGenerator() // 1
idGenerator() // 2
idGenerator() // 3
и тд
именно каунтер, а не выбирать из dom'а максимальний и инкрементить
источник

a

azabroflovski in Node.js — русскоговорящее сообщество
Vitaliy Kostetskiy
Господа, кто функциональщики, помогите начинающему осознать мощь рекурсивную
делаю todolist функционально, нужно каждому новому таску давать идентификатор последний+1
как мне без стейта сделать ф-цию idGenerator, которая при каждом следующем вызове будет возвращать следующее число
idGenerator() // 0
idGenerator() // 1
idGenerator() // 2
idGenerator() // 3
и тд
именно каунтер, а не выбирать из dom'а максимальний и инкрементить
Замыкание
источник

VK

Vitaliy Kostetskiy in Node.js — русскоговорящее сообщество
azabroflovski
Замыкание
можно пример плиз
источник

P

PH_cheerokee in Node.js — русскоговорящее сообщество
кто пушил на хероку
router.get("/", (req, res) => {
 res.send("server is running good");
});
на такую штуку возвращает method not allowed
в чем может быть проблема?
источник

a

azabroflovski in Node.js — русскоговорящее сообщество
Vitaliy Kostetskiy
можно пример плиз
var counter = (function () {
 var current = 0;
 return function () {
   current++;
   return current;
 }
})();

console.log(counter()); // 1
console.log(counter()); //2
источник

VK

Vitaliy Kostetskiy in Node.js — русскоговорящее сообщество
azabroflovski
var counter = (function () {
 var current = 0;
 return function () {
   current++;
   return current;
 }
})();

console.log(counter()); // 1
console.log(counter()); //2
без стейта
источник

RB

Random Balance in Node.js — русскоговорящее сообщество
Vitaliy Kostetskiy
без стейта
Как это без стейта? Он где-то же должен быть.
источник

RB

Random Balance in Node.js — русскоговорящее сообщество
Правильный вариант выше.
источник

a

azabroflovski in Node.js — русскоговорящее сообщество
Vitaliy Kostetskiy
без стейта
Чеее?
источник

VK

Vitaliy Kostetskiy in Node.js — русскоговорящее сообщество
Random Balance
Как это без стейта? Он где-то же должен быть.
ну вот, в замыкании, в рекурсии, где угодно, но ни одного let не должно быть
онли const
никаких переопределений
источник

VK

Vitaliy Kostetskiy in Node.js — русскоговорящее сообщество
Vitaliy Kostetskiy
ну вот, в замыкании, в рекурсии, где угодно, но ни одного let не должно быть
онли const
никаких переопределений
только не могу выкупить как именно
источник

RB

Random Balance in Node.js — русскоговорящее сообщество
Vitaliy Kostetskiy
только не могу выкупить как именно
Никак.
источник

a

azabroflovski in Node.js — русскоговорящее сообщество
Vitaliy Kostetskiy
ну вот, в замыкании, в рекурсии, где угодно, но ни одного let не должно быть
онли const
никаких переопределений
Понимаете что говорите?
источник

RB

Random Balance in Node.js — русскоговорящее сообщество
Программа должна где-то держать стейт, как ты его не прячь, он будет. Вот в замыкании ему лучшее место, там к нему никто не получит доступ кроме возвращённой функции.
источник

VK

Vitaliy Kostetskiy in Node.js — русскоговорящее сообщество
Random Balance
Программа должна где-то держать стейт, как ты его не прячь, он будет. Вот в замыкании ему лучшее место, там к нему никто не получит доступ кроме возвращённой функции.
даже если мы говорим о функциональном программировании?
источник

RB

Random Balance in Node.js — русскоговорящее сообщество
Vitaliy Kostetskiy
даже если мы говорим о функциональном программировании?
Даже если ты рекурсивно будешь вызывать функцию и каждый раз инкрементить счётчик, ты всё равно будешь передавать такую же переменную (счётчик). 💁🏻‍♂️
источник

V🦖

Valentine 🦖 in Node.js — русскоговорящее сообщество
azabroflovski
var counter = (function () {
 var current = 0;
 return function () {
   current++;
   return current;
 }
})();

console.log(counter()); // 1
console.log(counter()); //2
Так такое же уже легаси считается

Самовызывающиеся функции - плохая практика теперь
источник

RB

Random Balance in Node.js — русскоговорящее сообщество
Valentine 🦖
Так такое же уже легаси считается

Самовызывающиеся функции - плохая практика теперь
Да тут это неважно, просто более короткий синтаксис, ну было бы так:
function createCounter() {
 let count = 0;
 return function () {
   return ++count;
 }
}

const counter = createCounter();

Не сильно изменилось бы. Разве что чуть очевидней назначение.
источник

M🇷

Mikhail 🇷🇺🇨🇦 in Node.js — русскоговорящее сообщество
Сорян за оффтоп, после реального макос очень больно смотреть на тюнингованный дипин
источник

A

Aziz in Node.js — русскоговорящее сообщество
Mikhail 🇷🇺🇨🇦
Сорян за оффтоп, после реального макос очень больно смотреть на тюнингованный дипин
это реклама или как?
источник