Yoppy's Blog

主に何でもない日常の事や技術ネタを更新します

JavaScriptでアルファベットの配列をスマートに作る

JavaScriptでアルファベットの配列をスマートに作る

さて、突然ですが皆さんは

JavaScriptでA-Zの配列を作れ

と言われたらどうしますか?

直感的に


var alphabet = ['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'];

これもありですね。ですが今回はもうちょっとスマートにA-Zの配列を作成する方法を紹介します。

早速ですがコード


function Range(first, last) {
	var first = first.charCodeAt(0);
	var last = last.charCodeAt(0);
	var result = new Array();
	for(var i = first; i <= last; i++) {
            result.push(String.fromCodePoint(i));
	}
	return result;
}
    
var alphabet = Range('A', 'Z');

これは何をしているかというと、Unicode(ユニコード)のコードポイントを用いて引数の文字列をUnicodeのコードポイントの数値に変換します。

そしてそれをループで回してコードポイントをfromCodePointで文字列に再変換しているという流れです。

どうでしたか?手動でA-Zで入力するのはプログラミングらしくないので紹介してみました。


Twitter: @GochiUser

HP: http://yoppy.webcrow.jp