Heim  >  Artikel  >  Web-Frontend  >  #eetcode Transformation auf jedes Element im Array anwenden

#eetcode Transformation auf jedes Element im Array anwenden

WBOY
WBOYOriginal
2024-08-16 06:05:32273Durchsuche

#eetcode Apply Transform Over Each Element in Array

Gibt bei einem gegebenen ganzzahligen Array arr und einer Zuordnungsfunktion fn ein neues Array mit einer auf jedes Element angewendeten Transformation zurück.

Das zurückgegebene Array sollte so erstellt werden, dass returnArray[i] = fn(arr[i], i).

Bitte lösen Sie es ohne die integrierte Array.map-Methode.

Beispiel 1:

Eingabe: arr = [1,2,3], fn = function plusone(n) { return n + 1; }
Ausgabe: [2,3,4]
Erklärung:
const newArray = map(arr, plusone); // [2,3,4]
Die Funktion erhöht jeden Wert im Array um eins.

Beispiel 2:

Eingabe: arr = [1,2,3], fn = function plusI(n, i) { return n + i; }
Ausgabe: [1,3,5]
Erklärung: Die Funktion erhöht jeden Wert um den Index, in dem er sich befindet.

Beispiel 3:

Eingabe: arr = [10,20,30], fn = function constant() { return 42; }
Ausgabe: [42,42,42]
Erklärung:Die Funktion gibt immer 42 zurück.

Einschränkungen:

  • 0 <= arr.length <= 1000
  • -10^9 <= arr[i] <= 10^9
  • fn gibt eine Zahl zurück

Lösung

/**
 * @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;
};

Code-Komplettlösung

var map = function (arr, fn) {
Dies ist die Funktionsdeklaration. Die Map-Funktion akzeptiert zwei Argumente, arr (ein Array von Zahlen) und fn (eine Funktion, die auf jedes Element des Arrays angewendet wird).

let newArr = [];
Erstellen Sie ein leeres Array, um die transformierten Array-Elemente zu speichern.

for (let i = 0; i < arr.length; i++)
Durchlaufen Sie das gesamte Eingabearray arr

newArr[i] = fn(arr[i], i);
Prüft, ob jedes Array-Element in arr[i] die angegebene Bedingung erfüllt und speichert das Ergebnis im leeren Array newArr

return newArr;
Gibt das neu erstellte Array zurück, das die transformierten Elemente enthält.

Das obige ist der detaillierte Inhalt von#eetcode Transformation auf jedes Element im Array anwenden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn