JS Array Element to Func True
- Basic Algorithm Scripting: Finders Keepers | freeCodeCamp.org
- freeCodeCamp Challenge Guide: Finders Keepers - Guide - The freeCodeCamp Forum
原始代码:
```js function findElement(arr, func) { let num = 0 return num }
console.log(findElement([1, 2, 3, 4], (num) => num % 2 === 0)) ```
看过参考答案后,发现:原来还可以这样!
for
```js function findElement(arr, func) { let num = 0
for (let i = 0; i < arr.length; i++) { num = arr[i] if (func(num)) { return num } } return undefined }
console.log(findElement([1, 2, 3, 4], (num) => num % 2 === 0)) ```
find()
```js function findElement(arr, func) { return arr.find(func) }
console.log(findElement([1, 2, 3, 4], (num) => num % 2 === 0)) ```
map()
```js function findElement(arr, func) { return arr[arr.map(func).indexOf(true)] }
console.log(findElement([1, 2, 3, 4], (num) => num % 2 === 0)) ```
递归
```js function findElement(arr, func) { return arr.length && !func(arr[0]) ? findElement(arr.slice(1), func) : arr[0] }
console.log(findElement([1, 2, 3, 4], (num) => num % 2 === 2)) ```
相关:js