--- title: 'Array.prototype[@@iterator]()' slug: Web/JavaScript/Reference/Global_Objects/Array/@@iterator tags: - Array - ECMAScript6 - Experimental - Expérimental(2) - Iterator - JavaScript - Method - Prototype - Reference - Référence(2) translation_of: Web/JavaScript/Reference/Global_Objects/Array/@@iterator --- <div>{{JSRef("Global_Objects", "Array")}}</div> <h2 id="Summary">Сводка</h2> <p>Начальное значение свойства <strong><code>@@iterator</code></strong> является тем же самым функциональным объектом, что и начальное значение, возвращаемое методом {{jsxref("Array.prototype.values()", "values()")}}.</p> <h2 id="Syntax">Синтаксис</h2> <pre class="syntaxbox"><code><var>arr</var>[Symbol.iterator]()</code></pre> <h2 id="Examples">Примеры</h2> <h3 id="Example:_Iteration_using_for...of_loop">Пример: итерация посредством цикла <code>for...of</code></h3> <pre class="brush: js">var arr = ['w', 'y', 'k', 'o', 'p']; // ваш браузер должен поддерживать цикл for..of // и переменные с областью видимости let в циклах for for (let letter of arr) { console.log(letter); } </pre> <h3 id="Example:_Alternative_iteration">Пример: альтернативный способ итерации</h3> <pre class="brush: js">var arr = ['w', 'y', 'k', 'o', 'p']; var eArr = arr[Symbol.iterator](); console.log(eArr.next().value); // w console.log(eArr.next().value); // y console.log(eArr.next().value); // k console.log(eArr.next().value); // o console.log(eArr.next().value); // p </pre> <h2 id="Specifications">Спецификации</h2> {{Specifications}} <h2 id="Browser_compatibility">Совместимость с браузерами</h2> <p>{{Compat}}</p> <h2 id="See_also">Смотрите также</h2> <ul> <li>{{jsxref("Array.prototype.keys()")}}</li> <li>{{jsxref("Array.prototype.entries()")}}</li> <li>{{jsxref("Array.prototype.forEach()")}}</li> <li>{{jsxref("Array.prototype.every()")}}</li> <li>{{jsxref("Array.prototype.some()")}}</li> <li>{{jsxref("Array.prototype.values()")}}</li> </ul>