javascript: 순수 함수
두 가지 규칙
사용: 리팩터링하기 쉽고 코드를 보다 유연하고 적응 가능하게 만듭니다.
사례 1
// Pure function.
const multiplyNumbers = (x,y) => x * y;
multiplyNumbers(2, 3);
> 6
// Impure function.
let a = 4;
const multiplyNumbers = (b) => a *= b;
multiplyNumbers(3);
console.log(a); // first time: 12
> 12
multiplyNumbers(3);
console.log(a); // second time: 36
> 36
// Mutates external variable so it isn't pure.
사례 2
// Impure function.
addNumberarr = (arr, num) => {
arr.push(num);
};
const testArr = [1,2,3];
addNumberarr(testArr, 4);
console.log(testArr);
> [1, 2, 3, 4]
// Mutates input array so it isn't pure.
// pure version of above.
addNumberarr = (arr, num) => {
return [...arr, num];
};
const testArr = [1,2,3];
addNumberarr(testArr, 4);
> [1, 2, 3, 4]
JS 내장 순수 함수:
arr.reduce()
arr.map()
arr.filter()
arr.concat()
arr.slice()
arr.each()
arr.every()
... - spread syntax
JS 내장 불순함수:
arr.splice()
arr.push()
arr.sort()
Math.random()
감사,
따르다:
Reference
이 문제에 관하여(javascript: 순수 함수), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/urstrulyvishwak/javascript-pure-function-1gjf텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)