转换数组的每个元素

力扣:ttps://leetcode.cn/problems/apply-transform-over-each-element-in-array

解题思路

用for遍历每一项然后再映射

代码

1
2
3
4
5
6
7
8
9
10
11
/**
* @param {number[]} arr
* @param {Function} fn
* @return {number[]}
*/
var map = function(arr, fn) {
for(let i =0; i<arr.length; i++){
arr[i]=fn(arr[i],i)
}
return arr
};

过滤数组中的元素

力扣:https://leetcode.cn/problems/filter-elements-from-array

解题思路

if里面使用fn函数来判断是否加入新数组中

代码

1
2
3
4
5
6
7
8
9
10
11
12
/**
* @param {number[]} arr
* @param {Function} fn
* @return {number[]}
*/
var filter = function (arr, fn) {
const nums = [];
for (let i = 0; i < arr.length; i++) {
if (fn(arr[i], i)) nums.push(arr[i]);
}
return nums;
};

数组归约运算

力扣:https://leetcode.cn/problems/filter-elements-from-array

解题思路

if里面使用fn函数来判断是否加入新数组中

代码

1
2
3
4
5
6
7
8
9
10
11
12
/**
* @param {number[]} arr
* @param {Function} fn
* @return {number[]}
*/
var filter = function (arr, fn) {
const nums = [];
for (let i = 0; i < arr.length; i++) {
if (fn(arr[i], i)) nums.push(arr[i]);
}
return nums;
};