JavaScript 程序:生成数字和字符的范围
要理解此示例,你应该具备以下 JavaScript 编程主题的知识:
- JavaScript String fromCharCode() 方法
- JavaScript String charCodeAt() 方法
- JavaScript Array map() 方法
- JavaScript 生成器
示例:生成字符范围
// 程序用于生成数字和字符的范围
function* iterate(a, b) {
for (let i = a; i <= b; i += 1) {
yield i;
}
}
function range(a, b) {
if (typeof a === "string") {
let result = [...iterate(a.charCodeAt(), b.charCodeAt())].map((n) =>
String.fromCharCode(n),
);
console.log(result);
} else {
let result = [...iterate(a, b)];
console.log(result);
}
}
range(1, 5);
range("A", "G");
输出
[1, 2, 3, 4, 5]
["A", "B", "C", "D", "E", "F", "G"]
在上面的程序中,生成了上界和下界之间的数字和字符范围。
iterate
生成器函数用于遍历上界和下界。- 然后使用扩展语法
...
来包含iterate
函数返回的所有元素。 charCodeAt()
方法接收一个索引值,并返回表示其 UTF-16(16位 Unicode 转换格式)代码的整数。map()
方法遍历所有数组元素。fromCharCode()
方法将 Unicode 值转换为字符。