Join MDN and developers like you at Mozilla's View Source conference, 12-14 September in Berlin, Germany. Learn more at https://viewsourceconf.org

Array.prototype.some()

Podsumowanie

Sprawdza, czy jakikolwiek element tablicy zalicza test zaimplementowany przez dostarczoną funkcję .

Składnia

arr.some(callback[, thisArg])

Parametry

callback 
Funkcja sprawdzająca dla każdego elementu.
thisArg
Obiekt do użycia jako this gdy wykonujemy funkcję callback.

Opis

some wykonuje funkcję callback) na każdym elemencie tablicy, aż znajdzie taki, dla którego callback zwróci prawdę (true). Jeżeli taki element zostanie znaleziony, some zakończy swoje działanie i zwróci prawdę (true), w przeciwnym przypadku (gdy callback zwróci fałsz dla każdego z elementów) some zwróci false. Tablice traktowane są jako "zwarte" - czyli callback zostanie wywołane dla każdego elementu o indeksie mniejszym niż długość tablicy, nawet jeśli poszczególne indeksy nie zostały wcześniej zadeklarowane.

callback wywoływana jest z trzema argumentami: wartością elementu, jego indeksem i przemierzaną tablicą.

W przypadku podania argumentu thisObject, zostanie on przekazany jako this przy każdym wywołaniu callback. Gdy go brak, lub ma wartość null, użyty zostanie obiekt globalny przyporządkowany do callback.

some nie modyfikuje tablicy, na której jest wywołany.

Zakres elementów przetwarzanych przez some ustalany jest przed pierwszym wywołaniem callback. Elementy dodane do tablicy po wywołaniu some nie zostaną sprawdzone przez callback. Jeśli istniejący, niesprawdzony jeszcze element tablicy zostanie zmieniony lub usunięty przez callback, wartością przekazaną do callback będzie wartość z momentu, w którym some sprawdza dany element; elementy usunięte przed sprawdzeniem będą przekazane jako undefined.

Przykłady

Przykład: Sprawdzanie rozmiaru wszystkich elementów tablicy

Następujący przykład sprawdza czy jakiś element tablicy jest większy, bądź równy 10.

function isBigEnough(element, index, array) {
  return (element >= 10);
}
passed = [2, 5, 8, 1, 4].some(isBigEnough);
// fałsz
passed = [12, 5, 8, 1, 44].some(isBigEnough);
// prawda

Kompatybilność z przeglądarkami

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes) 1.5 (1.8) 9 (Yes) (Yes)
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (Yes) (Yes) 1.0 (1.8) (Yes) (Yes) (Yes)

Autorzy i etykiety dokumentu

 Ostatnia aktualizacja: alexfluger,