PHP前端开发

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

百变鹏仔 3天前 #JavaScript
文章标签 对数

给定一个整数数组 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。

限制:

解决方案

/** * @param {number[]} arr * @param {Function} fn * @return {number[]} */var map = function (arr, fn) {    let newArr = [];    for (let i = 0; i <p><strong>代码演练</strong></p><p>var map = function (arr, fn) {<br>这是函数声明。 map 函数接受两个参数:arr(数字数组)和 fn(将应用于数组的每个元素的函数)。</p><p>让 newarr = [];<br>创建一个空数组来存储转换后的数组元素。</p><p>for (让 i = 0; i 循环遍历整个输入数组 arr </p><p>newarr[i] = fn(arr[i], i);<br>检查 arr[i] 中的每个数组元素是否满足指定条件并将结果存储到空数组 newarr</p><p>返回newarr;<br>返回包含转换后的元素的新创建的数组。</p>