[ Leksykon ] [ JavaScript ] [ Tablice ] [ Metody ] [ Właściwości ] [ Array() ]
Array.prototype[@@iterator]()
[_] [A] [B] [C] [D] [E] [F] [G] [H] [I] [J] [K] [L] [M] [N] [O] [P] [Q] [R] [S] [T] [U] [V] [W] [X] [Y] [Z]
array[Symbol.iterator]()
Przykłady:
const tablica = ['a', 'b', 'c'];
const t1 = tablica[Symbol.iterator]();
for (const wartosc of t1) {
console.log(wartosc);
}
// "a"
// "b"
// "c"
//<ul id="menu"></ul>
const tablica = ["a", "b", "c"];
const menuLi = document.getElementById("menu");
for (const wartosc of tablica) {
const li = document.createElement("li");
menuLi.textContent = wartosc;
letterResult.appendChild(menuLi);
}
// * a
// * b
// * c
const tablica = ["a", "b", "c", "d", "e"];
const tablicaV = tablica[Symbol.iterator]();
console.log(tablicaV.next().value);
console.log(tablicaV.next().value);
console.log(tablicaV.next().value);
console.log(tablicaV.next().value);
console.log(tablicaV.next().value);
// "a"
// "b"
// "c"
// "d"
// "e"
function zadanie(x) {
if (typeof x[Symbol.iterator] !== "function") {
console.log(x, "nie jest tekstem");
return;
}
for (const wartosc of x) {
console.log(wartosc);
}
}
zadanie(["A", "B", "C"]);
// A
// B
// C
zadanie("Dom");
// D
// o
// m
zadanie(555);
// 555 "nie jest tekstem"
Opis:
Metoda Array.prototype[@@iterator]() instancji Array implementuje protokół iterowalny i umożliwia korzystanie z tablic przez większość składni oczekujących iterowalności, takich jak składnia rozproszona (...) i for...of pętle. Zwraca obiekt iteratora tablicy, który zwraca wartość każdego indeksu w tablicy. Wartość początkowa tej właściwości jest tym samym obiektem funkcji, co wartość początkowa właściwości Array.prototype.values. Wartość zwracana ta sama wartość zwracana co Array.prototype.values(), nowy iterowalny obiekt iteratora, który zwraca wartość każdego indeksu w tablicy.
Zobacz:
Array.values() -
(...) - składnia rozproszona
for...of -
protokół iterowalny -
obiekt iteratora tablicy -