简介
在本实验中,我们将探索 JavaScript 编程语言的基础知识。你将学习 JavaScript 的基本语法、数据类型、函数和控制结构。在实验结束时,你将能够使用 JavaScript 编写简单的程序,并对该语言有扎实的理解。本实验是为没有编程或 JavaScript 经验的初学者设计的。
子字符串的索引
要在给定字符串中找到子字符串的所有索引,请执行以下步骤:
- 打开终端/SSH 并输入
node以开始练习编码。 - 使用内置方法
Array.prototype.indexOf()在str中搜索searchValue。 - 如果找到该值,则使用
yield返回索引并更新索引i。 - 使用
while循环,一旦Array.prototype.indexOf()返回的值为-1,就终止生成器。
以下是实现上述步骤的示例代码:
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 中练习更多实验来提升你的技能。