Array.from()メソッドを使って、連番の配列を生成する方法をメモ。
サンプルコード
Array.from()で以下のように設定します。
const array = Array.from({ length: 10}, (element, index) => index + 1); console.log(array); // [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
lengthの値を変更することで、配列内の値の個数を変更できます。
連番の配列生成のデモページ
連番の開始位置と終了位置、連番間の差を設定できる関数にしてみます。
function generate_sequence_array(start, stop, step) { return Array.from({ length: (stop - start) / step + 1}, (element, index) => start + (index * step)); } const array1 = generate_sequence_array(0, 4, 1); console.log(array1); // [0, 1, 2, 3, 4] const array2 = generate_sequence_array(1, 10, 2); console.log(array2); // [1, 3, 5, 7, 9]
上記関数でアルファベットやひらがな、カタカナの一覧が入った配列も生成できます。
function generate_sequence_array(start, stop, step) { return Array.from({ length: (stop - start) / step + 1}, (element, index) => start + (index * step)); } // アルファベット(大文字)の一覧生成 const uppercaseAlphabet = generate_sequence_array('A'.charCodeAt(0), 'Z'.charCodeAt(0), 1).map(function(element) { return String.fromCharCode(element); }); console.log(uppercaseAlphabet); // ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'] // アルファベット(小文字)の一覧生成 const lowercaseAlphabet = generate_sequence_array('a'.charCodeAt(0), 'z'.charCodeAt(0), 1).map(function(element) { return String.fromCharCode(element); }); console.log(lowercaseAlphabet); // ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'] // ひらがなの一覧生成 const hiragana = generate_sequence_array('ぁ'.charCodeAt(0), 'ゔ'.charCodeAt(0), 1).map(function(element) { return String.fromCharCode(element); }); console.log(hiragana); // ['ぁ', 'あ', 'ぃ', 'い', 'ぅ', 'う', 'ぇ', 'え', 'ぉ', 'お', 'か', 'が', 'き', 'ぎ', 'く', 'ぐ', 'け', 'げ', 'こ', 'ご', 'さ', 'ざ', 'し', 'じ', 'す', 'ず', 'せ', 'ぜ', 'そ', 'ぞ', 'た', 'だ', 'ち', 'ぢ', 'っ', 'つ', 'づ', 'て', 'で', 'と', 'ど', 'な', 'に', 'ぬ', 'ね', 'の', 'は', 'ば', 'ぱ', 'ひ', 'び', 'ぴ', 'ふ', 'ぶ', 'ぷ', 'へ', 'べ', 'ぺ', 'ほ', 'ぼ', 'ぽ', 'ま', 'み', 'む', 'め', 'も', 'ゃ', 'や', 'ゅ', 'ゆ', 'ょ', 'よ', 'ら', 'り', 'る', 'れ', 'ろ', 'ゎ', 'わ', 'ゐ', 'ゑ', 'を', 'ん', 'ゔ'] // カタカナの一覧生成 const katakana = generate_sequence_array('ァ'.charCodeAt(0), 'ヴ'.charCodeAt(0), 1).map(function(element) { return String.fromCharCode(element); }); console.log(katakana); // ['ァ', 'ア', 'ィ', 'イ', 'ゥ', 'ウ', 'ェ', 'エ', 'ォ', 'オ', 'カ', 'ガ', 'キ', 'ギ', 'ク', 'グ', 'ケ', 'ゲ', 'コ', 'ゴ', 'サ', 'ザ', 'シ', 'ジ', 'ス', 'ズ', 'セ', 'ゼ', 'ソ', 'ゾ', 'タ', 'ダ', 'チ', 'ヂ', 'ッ', 'ツ', 'ヅ', 'テ', 'デ', 'ト', 'ド', 'ナ', 'ニ', 'ヌ', 'ネ', 'ノ', 'ハ', 'バ', 'パ', 'ヒ', 'ビ', 'ピ', 'フ', 'ブ', 'プ', 'ヘ', 'ベ', 'ペ', 'ホ', 'ボ', 'ポ', 'マ', 'ミ', 'ム', 'メ', 'モ', 'ャ', 'ヤ', 'ュ', 'ユ', 'ョ', 'ヨ', 'ラ', 'リ', 'ル', 'レ', 'ロ', 'ヮ', 'ワ', 'ヰ', 'ヱ', 'ヲ', 'ン', 'ヴ']
コメントが承認されるまで時間がかかります。