JavaScript - The Iterables Object
こんにちは、将来のプログラマーたち!今日は、JavaScriptのイテラブルな世界への興味深い旅に出かけます。あなたの近所の親切なコンピュータサイエンスの先生として、私はこの冒険をステップバイステップで案内します。さあ、バーチャルの背包を持ち出して、始めましょう!
イテラブルとは何か?
本題に入る前に、まずイテラブルとは何かを理解しましょう。JavaScriptでは、イテラブルは「反復可能な」オブジェクトです。簡単に言えば、一つずつ traverser できるアイテムのコレクションです。宝箱にた crammed されたgoodiesを一つずつ探索するようなものです。
JavaScriptにおける一般的なイテラブルの例には、配列、文字列、マップがあります。これらはそれぞれ独自の特性を持つ異なる種類の宝箱です。
for...ofループを使った反復
さあ、まず最初の方法、for...of
ループを使った宝箱の探索を学びましょう。これは、宝箱のそれぞれの区画を一つずつ開ける魔法の鍵のようなものです。
例1: 配列の反復
const fruits = ['apple', 'banana', 'orange'];
for (const fruit of fruits) {
console.log(fruit);
}
この例では、私たちの宝箱(配列)には果物があります。for...of
ループは一つずつ果物を traverser し、印刷します。このコードを実行すると以下のようになります:
apple
banana
orange
まるで宝箱からそれぞれの果物を取り出し、鑑賞するようなものです!
例2: 文字列の反復
文字列もイテラブルです。それをどうやって探索するか見てみましょう:
const message = "Hello";
for (const character of message) {
console.log(character);
}
このコードの出力は以下のようになります:
H
e
l
l
o
文字列のそれぞれの文字は、私たちが注意深く観察する小さな宝物です。
forEach()メソッドを使った反復
次に、別の方法で宝箱を探索する方法を学びましょう:forEach()
メソッド。これは、宝箱の中のそれぞれのアイテムを私たちに見せる助手的なものです。
例3: 配列を使ったforEach()
const numbers = [1, 2, 3, 4, 5];
numbers.forEach(function(number) {
console.log(number * 2);
});
このコードの出力は以下のようになります:
2
4
6
8
10
ここで、私たちの助手(forEach()
メソッド)はそれぞれの数字を見せてくれているだけでなく、その倍数も計算してくれます!
例4: セットを使ったforEach()
JavaScriptには別の種類のイテラブルであるセットもあります。forEach()
を使ってそれをどうやって探索するか見てみましょう:
const uniqueColors = new Set(['red', 'blue', 'green']);
uniqueColors.forEach(function(color) {
console.log(`Color: ${color}`);
});
出力は以下のようになります:
Color: red
Color: blue
Color: green
私たちの助手的な存在が、セットの中のそれぞれのユニークな色を見せてくれています。
map()メソッドを使った反復
最後に、map()
メソッドについて学びましょう。これは、宝箱の中のそれぞれのアイテムを traverser する際に変換する魔法の杖のようなものです。
例5: 配列要素の変換
const prices = [10, 20, 30, 40, 50];
const discountedPrices = prices.map(function(price) {
return price * 0.9; // 10%オフ
});
console.log(discountedPrices);
出力は以下のようになります:
[9, 18, 27, 36, 45]
ここで、私たちの魔法の杖(map()
メソッド)はそれぞれの価格に10%の割引を適用しています。
例6: 既存データから新しい配列を作成
const names = ['Alice', 'Bob', 'Charlie'];
const greetings = names.map(function(name) {
return `Hello, ${name}!`;
});
console.log(greetings);
出力は以下のようになります:
['Hello, Alice!', 'Hello, Bob!', 'Hello, Charlie!']
私たちの魔法の杖は、それぞれの名前を親切な挨拶に変換しています!
反復メソッドのまとめ
ここで学んだメソッドをまとめた便利な表を以下に示します:
メソッド | 説明 | 使用例 |
---|---|---|
for...of |
イテラブルなオブジェクトをループで traverser | シンプルな反復が必要な場合 |
forEach() |
配列のそれぞれの要素に対して関数を実行 | それぞれの要素に対してアクションを実行したい場合 |
map() |
新しい配列を作成し、それぞれの要素に対して関数を実行 | 配列のそれぞれの要素を変換したい場合 |
これらのメソッドは、プログラミングツールボックスの中の異なるツールです。経験を積むことで、どれを何时に使うかを学ぶことができます。
結論として、JavaScriptのイテラブルはデータのコレクションを効率的に操作する強力な構造です。for...of
ループ、forEach()
、map()
を使うことで、データを探索し、操作することができます。真のプログラミングウィザードのように、複雑なコードの魔法を唱えることができるようになるまで練習を続けましょう。若い弟子たち、お楽しみに!
Credits: Image by storyset