JavaScriptで、指定された長さ(文字を繰り返すことができます)の可能なすべての組み合わせを生成する必要があります。を使用してルビーで書くことができるものfor word in ('a'*4..'z'*4)
。
1 に答える
1
JavaScriptにはそのような機能的な構文はありません。新しいリスト内包表記を使用すると、そのようなことを行う可能性がありますが、広くサポートされていません。したがって、ループ内で文字列を手動で作成する必要があります。
var from = 97,
to = from + 26,
rep = 4,
callback = function(str) { … };
(function recurse(arr, len) {
if (len < rep)
for (var i=from; i<to; i++) {
arr[len] = i;
recurse(arr, len+1);
}
else
callback( String.fromCharCode.apply(null, arr) );
})([], 0);
于 2012-12-27T10:59:42.947 に答える