js函数柯里化面试题
1. 实现一个add函数,实现两个数的相加功能。
```javascript
function add(a, b)
return a + b;
```
2. 实现一个curry函数,使得add(a, b)和curryAdd(a)(b)均返回a + b的结果。
```javascript
function curryAdd(a)
return function(b)
return a + b;
}
```
3. 实现一个curry函数,使得add(a, b, c)和curryAdd(a)(b)(c)均返回a + b + c的结果。
```javascript
function curryAdd(a)
return function(b)
return function(c)
return a + b + c;
}
}
```
4. 实现一个curry函数,使得curryAdd(a, b, c, d, e)(f)(g)返回a + b + c + d + e + f + g的结果。
```javascript
function curryAdd(a, b, c, d, e)
function innerCurry(f)
return function(g)
return a + b + c + d + e + f + g;
}
}
return innerCurry;
```
5. 实现一个multiply函数,实现两个数的相乘功能。
```javascript
function multiply(a, b)
return a * b;
```
6. 实现一个curry函数,使得multiply(a, b)和curryMultiply(a)(b)均返回a * b的结果。
```javascript
javascript 函数function curryMultiply(a)
return function(b)
return a * b;
}
```
7. 实现一个curry函数,使得multiply(a, b, c)和curryMultiply(a)(b)(c)均返回a * b * c的结果。
```javascript
function curryMultiply(a)
return function(b)
return function(c)
return a * b * c;
}
}
```
8. 实现一个curry函数,使得curryMultiply(a, b, c, d, e)(f)(g)返回a * b * c * d * e * f * g的结果。
```javascript
function curryMultiply(a, b, c, d, e)
function innerCurry(f)
return function(g)
return a * b * c * d * e * f * g;
}
}
return innerCurry;
```
9. 实现一个divide函数,实现两个数的相除功能。
```javascript
function divide(a, b)
return a / b;
```
10. 实现一个curry函数,使得divide(a, b)和curryDivide(a)(b)均返回a / b的结果。
```javascript
function curryDivide(a)
return function(b)
return a / b;
}

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。