2018-10-10 18:03:03 -04:00
|
|
|
|
---
|
|
|
|
|
id: adf08ec01beb4f99fc7a68f2
|
2021-01-12 08:18:51 -08:00
|
|
|
|
title: 过滤数组中的假值
|
2018-10-10 18:03:03 -04:00
|
|
|
|
challengeType: 5
|
2021-01-12 08:18:51 -08:00
|
|
|
|
forumTopicId: 16014
|
2018-10-10 18:03:03 -04:00
|
|
|
|
---
|
|
|
|
|
|
2020-12-16 00:37:30 -07:00
|
|
|
|
# --description--
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2021-01-12 08:18:51 -08:00
|
|
|
|
从数组中移除所有假值(falsy values)。
|
|
|
|
|
|
|
|
|
|
JavaScript 中的假值有 `false`、`null`、`0`、`""`、`undefined`、`NaN`。
|
|
|
|
|
|
|
|
|
|
提示:可以考虑将每个值都转换为布尔值(boolean)。
|
|
|
|
|
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2020-12-16 00:37:30 -07:00
|
|
|
|
# --hints--
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2021-01-12 08:18:51 -08:00
|
|
|
|
`bouncer([7, "ate", "", false, 9])` 应返回 `[7, "ate", 9]`。
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2020-12-16 00:37:30 -07:00
|
|
|
|
```js
|
|
|
|
|
assert.deepEqual(bouncer([7, 'ate', '', false, 9]), [7, 'ate', 9]);
|
2018-10-10 18:03:03 -04:00
|
|
|
|
```
|
|
|
|
|
|
2021-01-12 08:18:51 -08:00
|
|
|
|
`bouncer(["a", "b", "c"])` 应返回 `["a", "b", "c"]`。
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
|
|
|
|
```js
|
2020-12-16 00:37:30 -07:00
|
|
|
|
assert.deepEqual(bouncer(['a', 'b', 'c']), ['a', 'b', 'c']);
|
2018-10-10 18:03:03 -04:00
|
|
|
|
```
|
|
|
|
|
|
2021-01-12 08:18:51 -08:00
|
|
|
|
`bouncer([false, null, 0, NaN, undefined, ""])` 应返回 `[]`。
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2020-12-16 00:37:30 -07:00
|
|
|
|
```js
|
|
|
|
|
assert.deepEqual(bouncer([false, null, 0, NaN, undefined, '']), []);
|
|
|
|
|
```
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
2021-01-12 08:18:51 -08:00
|
|
|
|
`bouncer([1, null, NaN, 2, undefined])`应返回 `[1, 2]`。
|
2018-10-10 18:03:03 -04:00
|
|
|
|
|
|
|
|
|
```js
|
2020-12-16 00:37:30 -07:00
|
|
|
|
assert.deepEqual(bouncer([null, NaN, 1, 2, undefined]), [1, 2]);
|
2018-10-10 18:03:03 -04:00
|
|
|
|
```
|
2020-08-13 17:24:35 +02:00
|
|
|
|
|
2020-12-16 00:37:30 -07:00
|
|
|
|
# --solutions--
|
|
|
|
|
|