ホームページ > ウェブフロントエンド > jsチュートリアル > JavaScript の組み込み反復可能オブジェクトとは何ですか?の包括的な分析

JavaScript の組み込み反復可能オブジェクトとは何ですか?の包括的な分析

PHPz
リリース: 2024-01-13 14:36:06
オリジナル
814 人が閲覧しました

JavaScript の組み込み反復可能オブジェクトとは何ですか?の包括的な分析

JS の組み込み反復可能オブジェクトとは何ですか?完全な分析には特定のコード例が必要です。

JavaScript では、反復可能オブジェクトとは、反復子を使用して要素にアクセスできるオブジェクトを指します。 ES6 以降、多くの組み込みデータ構造は反復可能プロトコルを実装しており、for...of ループまたは反復子オブジェクトを使用して走査できます。

JS の一般的な反復可能オブジェクトは次のとおりです。

  1. Array (配列):

Array は、最も一般的な反復可能オブジェクトです。 for...of ループを使用するか、イテレータ オブジェクト イテレータを使用して、配列内の要素を反復処理できます。以下は配列オブジェクトの例です:

const arr = [1, 2, 3, 4];

// 使用for...of循环遍历
for (let item of arr) {
  console.log(item);
}

// 使用迭代器对象遍历
const iterator = arr[Symbol.iterator]();
let result = iterator.next();
while (!result.done) {
  console.log(result.value);
  result = iterator.next();
}
ログイン後にコピー
  1. String (String):

String も反復可能なオブジェクトであり、for... を直接使用できます。または、イテレータ オブジェクトを使用して、文字列内の各文字を反復処理します。

const str = 'Hello World';

// 使用for...of循环遍历
for (let char of str) {
  console.log(char);
}

// 使用迭代器对象遍历
const iterator = str[Symbol.iterator]();
let result = iterator.next();
while (!result.done) {
  console.log(result.value);
  result = iterator.next();
}
ログイン後にコピー
  1. 配列のようなオブジェクト (引数):

Arguments オブジェクトは、関数の呼び出し時に関数に渡されるパラメーター リストを含む配列のようなオブジェクトです。 。これは反復可能なオブジェクトでもあるため、for...of ループを使用してその中の各パラメーターを反復処理できます。

function sum() {
  for (let arg of arguments) {
    console.log(arg);
  }
}

sum(1, 2, 3, 4);
ログイン後にコピー
  1. Set と Map:

Set と Map は、ES6 で導入された新しいデータ構造です。これらは反復可能なオブジェクトでもあり、for...of で使用できます。ループまたは使用 イテレータ オブジェクトはその要素を走査します。

const set = new Set([1, 2, 3]);

// 使用for...of循环遍历Set中的元素
for (let item of set) {
  console.log(item);
}

// 使用迭代器对象遍历Set中的元素
const iterator = set[Symbol.iterator]();
let result = iterator.next();
while (!result.done) {
  console.log(result.value);
  result = iterator.next();
}

const map = new Map([
  ['name', 'John'],
  ['age', 25]
]);

// 使用for...of循环遍历Map中的元素
for (let [key, value] of map) {
  console.log(key, value);
}

// 使用迭代器对象遍历Map中的元素
const iterator = map[Symbol.iterator]();
let result = iterator.next();
while (!result.done) {
  console.log(result.value);
  result = iterator.next();
}
ログイン後にコピー
  1. Generator オブジェクト:

Generator は、yield キーワードを使用して実行プロセスを一時停止および再開できる特別な関数です。ジェネレーター オブジェクトは反復可能なオブジェクトでもあり、for...of ループまたはイテレーター オブジェクトを使用して走査できます。

function* generatorFunc() {
  yield 1;
  yield 2;
  yield 3;
}

const generator = generatorFunc();

// 使用for...of循环遍历Generator中的元素
for (let item of generator) {
  console.log(item);
}

// 使用迭代器对象遍历Generator中的元素
const iterator = generator[Symbol.iterator]();
let result = iterator.next();
while (!result.done) {
  console.log(result.value);
  result = iterator.next();
}
ログイン後にコピー

概要: 上記は JavaScript の一般的な組み込み反復可能オブジェクトであり、for...of ループまたはイテレータ オブジェクトを使用してすべてトラバースできます。これらの反復可能なオブジェクトを理解することで、それらが提供する機能をより有効に活用できるようになります。

以上がJavaScript の組み込み反復可能オブジェクトとは何ですか?の包括的な分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート