ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript で数値または文字の範囲を作成するにはどうすればよいですか?

JavaScript で数値または文字の範囲を作成するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-09 17:49:171009ブラウズ

How Can I Create a Range of Numbers or Characters in JavaScript?

JavaScript には Range 関数がありますか?

JavaScript には、PHP のような、指定された範囲内で範囲を生成する「range()」メソッドがネイティブに含まれていません。ただし、組み込みメソッドまたはサードパーティのライブラリを使用してこれを実現する方法がいくつかあります。

数値

数値の範囲を生成するには、次の構文:

[...Array(5).keys()]; // [0, 1, 2, 3, 4]

文字Iteration

文字の反復の場合、次のコードを使用できます。

String.fromCharCode(...[...Array('D'.charCodeAt(0) - 'A'.charCodeAt(0) + 1).keys()].map(i => i + 'A'.charCodeAt(0))); // "ABCD"

Iteration

数値と文字の両方を同時に反復するには、 try:

for (const x of Array(5).keys()) {
  console.log(x, String.fromCharCode('A'.charCodeAt(0) + x));
} // 0,"A" 1,"B" 2,"C" 3,"D" 4,"E"

関数

再利用可能な関数を作成するには、次のことができます:

function range(size, startAt = 0) {
  return [...Array(size).keys()].map(i => i + startAt);
}

function characterRange(startChar, endChar) {
  return String.fromCharCode(...range(endChar.charCodeAt(0) -
            startChar.charCodeAt(0), startChar.charCodeAt(0)))
}

console.log(range(5)); // [0, 1, 2, 3, 4]
console.log(characterRange('A', 'C')); // "ABC"

Lodash.js ライブラリ

Lodash.js には_.range() 関数:

_.range(10); // [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
_.range(1, 11); // [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

これらの手法は、JavaScript 内で PHP の range() 関数に代わる実行可能な代替手段を提供します。

以上がJavaScript で数値または文字の範囲を作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。