freeCodeCamp/curriculum/challenges/chinese/02-javascript-algorithms-an.../intermediate-algorithm-scri.../arguments-optional.md

56 lines
1.1 KiB
Markdown
Raw Normal View History

---
id: a97fd23d9b809dac9921074f
title: 可选参数
challengeType: 5
forumTopicId: 14271
---
# --description--
创建一个将两个参数相加的函数。如果只传入了一个参数,则返回一个函数,需要传入一个参数并返回总和。
比如,`addTogether(2, 3)`应该返回`5`。而`addTogether(2)`应该返回一个函数。
调用这个返回的函数,传入一个值,返回总和:
`var sumTwoAnd = addTogether(2);`
`sumTwoAnd(3)`此时应返回`5`。
只要其中任何一个参数不是数字,那就应返回`undefined`。
# --hints--
`addTogether(2, 3)`应该返回5。
```js
assert.deepEqual(addTogether(2, 3), 5);
```
`addTogether(2)(3)`应该返回5。
```js
assert.deepEqual(addTogether(2)(3), 5);
```
`addTogether("http://bit.ly/IqT6zt")`应返回undefined。
```js
assert.isUndefined(addTogether('http://bit.ly/IqT6zt'));
```
`addTogether(2, "3")`应返回undefined。
```js
assert.isUndefined(addTogether(2, '3'));
```
`addTogether(2)([3])`应返回undefined。
```js
assert.isUndefined(addTogether(2)([3]));
```
# --solutions--