Array. of()
Tworzy nową tablicę z podanych argumentów, niezależnie od ich liczby i typu.
- Zwraca
- Nową tablicę z podanymi elementami.
- Zmienia oryginał
- Nie
Przykład
#console.log(Array.of(7))
console.log(Array.of(1, 2, 3))
console.log(Array.of('HTML', 'CSS'))
console.log(Array.of())Definicja i zastosowanie
#Metoda statyczna Array.of() tworzy tablicę, której elementami są dokładnie przekazane argumenty. Array.of(7) daje tablicę z jednym elementem 7, a Array.of(1, 2, 3) tablicę trzech liczb.
Powstała, żeby ominąć dziwne zachowanie konstruktora Array. Wywołanie new Array(3) z jedną liczbą nie tworzy tablicy [3], tylko pustą tablicę o długości 3, a new Array(2.5) rzuca błąd. Array.of() zawsze traktuje argumenty jak elementy.
Na co dzień tablice tworzy się literałem [1, 2, 3], który jest krótszy i czytelniejszy. Array.of() przydaje się tam, gdzie potrzebujesz funkcji budującej tablicę z argumentów, oraz w klasach dziedziczących po Array, bo zwraca instancję tej klasy.
Składnia
#Array.of(element1, element2, …)Parametry
#element1…elementN
dowolne wartości
Wartości, które staną się elementami tablicy. Bez argumentów powstanie pusta tablica.
Więcej przykładów
#console.log(new Array(3).length)
console.log(Array.of(3).length)
console.log(new Array(3, 4))
try {
new Array(2.5)
} catch (error) {
console.log(error.name)
}Konstruktor Array z jedną liczbą traktuje ją jak długość, a z kilkoma argumentami jak elementy. Array.of() nie ma tej niekonsekwencji.
const tags = ['html', 'css']
console.log(tags.map((tag) => Array.of(tag)))
console.log(tags.map(Array.of))map() przekazuje do funkcji także indeks i całą tablicę, a Array.of zamienia każdy argument w element. Opakuj wywołanie w funkcję strzałkową, żeby przekazać tylko jeden argument.
Obsługa przeglądarek
#Szeroko dostępne
Działa we wszystkich nowoczesnych przeglądarkach, także na telefonach. Możesz używać bez obaw.
- Chrome
- Edge
- Firefox
- Safari
Dobre praktyki
#- Do zwykłego tworzenia tablic używaj literału
[]. PoArray.of()sięgaj, gdy potrzebujesz tego jako funkcji. - Nie twórz tablicy przez
new Array(n), jeśli chcesz tablicę z liczbąn. Powstanie pusta tablica o długościn. - Do tablicy o znanej długości wypełnionej wartościami lepsze jest
Array.from({ length: n }, fn).
Powiązane hasła
#- Array.from()Tworzy tablicę z obiektu iterowalnego lub „tablicopodobnego”.
- Array.isArray()Sprawdza, czy wartość jest tablicą.
- Array.prototype.fill()Wypełnia tablicę (lub jej fragment) jedną wartością.
- Spread (...)Składnia spread rozkłada tablicę, napis lub obiekt na pojedyncze elementy: do kopiowania, łączenia i przekazywania argumentów.
Widzisz błąd albo brakuje przykładu? Napisz do nas.