はじめに
この実験では、JavaScript プログラミング言語の基本を学びます。JavaScript の基本構文、データ型、関数、制御構造を学びます。実験が終了するまでに、JavaScript を使って簡単なプログラムを書けるようになり、この言語をしっかり理解できるようになります。この実験は、プログラミングや JavaScript の経験のない初心者を対象に設計されています。
部分文字列のインデックス
与えられた文字列内の部分文字列のすべてのインデックスを見つけるには、次の手順に従います。
- ターミナル/SSH を開き、コーディングを練習するために
nodeと入力します。 - 組み込みメソッド
Array.prototype.indexOf()を使用して、str内のsearchValueを検索します。 - 値が見つかった場合、インデックスを返してインデックス
iを更新するためにyieldを使用します。 Array.prototype.indexOf()から返される値が-1になったときにジェネレータを終了するwhileループを使用します。
上記の手順を実装するためのサンプルコードは次のとおりです。
const indexOfSubstrings = function* (str, searchValue) {
let i = 0;
while (true) {
const r = str.indexOf(searchValue, i);
if (r !== -1) {
yield r;
i = r + 1;
} else return;
}
};
次のコードで関数をテストできます。
[...indexOfSubstrings("tiktok tok tok tik tok tik", "tik")]; // [0, 15, 23]
[...indexOfSubstrings("tutut tut tut", "tut")]; // [0, 2, 6, 10]
[...indexOfSubstrings("hello", "hi")]; // []
まとめ
おめでとうございます!あなたは部分文字列のインデックスの実験を完了しました。あなたのスキルを向上させるために、LabEx でさらに実験を行って練習できます。