Рубрики
Uncategorized

Избегание мутаций и побочных эффектов с использованием функционального программирования

Вопрос на предыдущих постах был с вызовом SPRICE в функции Tablose (). К несчастью, … Помечено с JavaScript, DevOps, новичками, программированием.

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

  • Один из основных принципов функционального программирования — не менять вещи. Изменения приводят к ошибкам. Легче предотвратить ошибки, зная, что ваши функции ничего не меняют, включая функциональные аргументы или любая глобальная переменная.

  • Давайте попробуем освоить эту дисциплину и не изменять никакой переменной или объекта в нашем коде.

  • Давайте заполним код для функции инкремент так что возвращает значение глобальной переменной FixedPalue увеличился за другим.

var fixedValue = 4;

function incrementer () {

}
  • Отвечать:
var fixedValue = 4;

function incrementer () {
  return fixedValue + 1;
}

console.log(fixedValue); will display 4
console.log(incrementer()); will display 5;
  • Функция инкремент не изменил значение фиксированного значения (что 4). и Инкремент Функция должна вернуть значение, которое составляет один больше, чем FixedPalue ценить.

Оригинал: «https://dev.to/rthefounding/avoiding-mutations-and-side-effects-using-functional-programming-3o4g»