首页 > web前端 > js教程 > 正文

#eetcode 对数组中的每个元素应用变换

WBOY
发布: 2024-08-16 06:05:32
原创
316 人浏览过

#eetcode Apply Transform Over Each Element in Array

给定一个整数数组 arr 和一个映射函数 fn,返回一个对每个元素应用转换的新数组。

返回的数组应创建为 returnedArray[i] = fn(arr[i], i).

请在不使用内置Array.map方法的情况下解决。

示例1:

输入: arr = [1,2,3], fn = function plusone(n) { return n + 1; }
输出: [2,3,4]
说明:
const newArray = map(arr, plusone); // [2,3,4]
该函数将数组中的每个值加一。

示例2:

输入: arr = [1,2,3], fn = function plusI(n, i) { return n + i; }
输出: [1,3,5]
说明: 该函数将每个值增加其所在索引。

示例 3:

输入: arr = [10,20,30], fn = function Constant() { return 42; }
输出: [42,42,42]
说明:该函数始终返回 42。

约束:

  • 0
  • -10^9
  • fn 返回一个数字

解决方案

/**
 * @param {number[]} arr
 * @param {Function} fn
 * @return {number[]}
 */
var map = function (arr, fn) {
    let newArr = [];

    for (let i = 0; i < arr.length; i++) {
        newArr[i] = fn(arr[i], i);
    }
    return newArr;
};
登录后复制

代码演练

var map = function (arr, fn) {
这是函数声明。 map 函数接受两个参数:arr(数字数组)和 fn(将应用于数组的每个元素的函数)。

让 newArr = [];
创建一个空数组来存储转换后的数组元素。

for (令 i = 0; i 循环遍历整个输入数组 arr

newArr[i] = fn(arr[i], i);
检查 arr[i] 中的每个数组元素是否满足指定条件并将结果存储到空数组 newArr

返回newArr;
返回包含转换后的元素的新创建的数组。

以上是#eetcode 对数组中的每个元素应用变换的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:dev.to
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板