Array.prototype.map() oczekuje wartości zwracanej przez funkcję strzałkową :Fix

Array.prototype.map() oczekuje wartości zwracanej przez funkcję strzałkową :Fix

W JavaScript może pojawić się komunikat o błędzie „ Array.prototype.map() oczekuje wartości zwracanej przez funkcję strzałki ”. Istnieje kilka scenariuszy, w których możesz napotkać ten problem i istnieje wiele sposobów na ominięcie tego problemu. Ogólnie rzecz biorąc, podczas korzystania z funkcji „ Array.prototype.map() ”, jeśli podczas wykonywania kodu nie zwraca ona niczego (null). W przeciwnym razie, jeśli popełniłeś błąd w poprzednich krokach związanych z metodą filtrowania, może pojawić się ten sam komunikat o błędzie.

Poprawka – 1 Zamień nawias

Zwykle nawiasy zapisane w kodzie nie powodują żadnego błędu. Ale w tym przypadku użycie {} zamiast () w kodzie.

Przykład – Ten fragment kodu –

{

If (Object.keys(t.pr.part).map((par) => {

if(t.pr.part[par].user_identifiant === getUrlParams(window.location.hash).user_identifiant)

this.setState({

par:t.pr.part[część].id_user

})

})

}

W tej części kodu zostanie wyświetlony komunikat „ Oczekuje się, że zwróci wartość w funkcji strzałki ”. Aby to naprawić, po prostu zmień „ ({ ” na „ (( ”) w kodzie.

Fragment kodu będzie wyglądał tak –

Object.keys(t.pr.part).map((par) => {

if(t.pr.part[par].user_identifiant === getUrlParams(window.location.hash).user_identifiant)

this.setState((

par:t.pr.part[część].id_user

))

)}

))

Pierwsza minuta 1

W ten sposób możesz rozwiązać problemy z kodem.

Poprawka 2 – zamiast tego użyj ForEach Array.map

Zamiast używać funkcji Array.map, użyj funkcji Array.ForEach w kodzie, aby uzyskać te same wyniki.

Zamiast metody map można zastosować funkcję Foreach, jeśli dana funkcja w kodzie nie musi zwracać żadnej wartości.

Przykład

ListService?.map((service, j) => {

powrót (

<Główny klucz usługi={service.id} {…{service, num: j }} />

)

})

Możesz zastąpić główną funkcję mapy i zmienić kod w następujący sposób –

ListService?.forEach((item) => {

csvData.push({

„Nazwa”: przedmiot?. nazwa,

„Praca”: pozycja?.desc,

})

})

dosięgnąć min

W ten sposób możesz całkowicie ominąć funkcję Array.map i uniknąć komunikatu o zwracanej wartości.

Poprawka 3 – Zwróć wartość null

Powinieneś dodać warunek else na końcu kodu i pozwolić mu zwrócić wartość null, jeśli funkcja Array.map nie może iterować żadnej wartości.

To bardzo łatwe. Po prostu uwzględnij to –

else {

zwróć wartość zerową:

}

}

w przeciwnym razie zwróć wartość null min

Uważaj tylko na nawiasy i wykonaj kod. Następnie skompiluj, uruchom kod i przetestuj.

Ilekroć kod się nie powiedzie, wykona przynajmniej iterację wartości null, a nie komunikat o błędzie „ Array.prototype.map() oczekuje wartości zwracanej z funkcji strzałki ”.

Poprawka 4 – Użyj kodu filtra

Istnieje inny sposób poradzenia sobie z tym problemem. Użyj „ ArrayPrototype.filter() ” zamiast Array.prototype.map(), jeśli wymagane jest segregowanie wartości w oparciu o pewne parametry.

Główna składnia tego kodu to –

let newArray = array.filter(callback(element[, index[, array]])[, thisArg])

Jest to metoda wbudowana, która może odfiltrować cały zestaw danych spełniający warunek określonej funkcji.

Oto sposoby rozwiązywania problemów z komunikatem wartości zwracanej w JavaScript.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *