Rumah >hujung hadapan web >tutorial js >#eetcode Gunakan Transformasi Pada Setiap Elemen dalam Tatasusunan
Memandangkan arr tatasusunan integer dan fungsi pemetaan fn, kembalikan tatasusunan baharu dengan penjelmaan yang digunakan pada setiap elemen.
Array yang dikembalikan harus dibuat sedemikian rupa sehingga Array[i] = fn(arr[i], i).
Sila selesaikan tanpa kaedah Array.map terbina dalam.
Contoh 1:
Input: arr = [1,2,3], fn = fungsi tambah satu(n) { pulangan n + 1; }
Output: [2,3,4]
Penjelasan:
const newArray = peta(arr, plusone); // [2,3,4]
Fungsi ini meningkatkan setiap nilai dalam tatasusunan sebanyak satu.
Contoh 2:
Input: arr = [1,2,3], fn = fungsi tambahI(n, i) { return n + i; }
Output: [1,3,5]
Penjelasan: Fungsi meningkatkan setiap nilai mengikut indeks yang berada di dalamnya.
Contoh 3:
Input: arr = [10,20,30], fn = pemalar fungsi() { return 42; }
Output: [42,42,42]
Penjelasan: Fungsi sentiasa mengembalikan 42.
Kekangan:
Penyelesaian
/** * @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; };
Panduan kod
peta var = fungsi (arr, fn) {
Ini adalah pengisytiharan fungsi. Fungsi peta mengambil argumen tunda, arr(susunan nombor) dan fn(fungsi yang akan digunakan pada setiap elemen tatasusunan).
biar newArr = [];
Cipta tatasusunan kosong untuk menyimpan elemen tatasusunan yang diubah.
untuk (biar i = 0; i < arr.length; i++)
Gelung melalui keseluruhan tatasusunan input
newArr[i] = fn(arr[i], i);
Menyemak sama ada setiap elemen tatasusunan dalam arr[i] memenuhi syarat yang ditentukan dan menyimpan hasilnya dalam tatasusunan kosong newArr
kembali newArr;
Mengembalikan tatasusunan yang baru dibuat yang mengandungi elemen yang diubah.
Atas ialah kandungan terperinci #eetcode Gunakan Transformasi Pada Setiap Elemen dalam Tatasusunan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!