私はこのようなスクリプト設定をしています(http://jsfiddle.net/YD66s/):
var countFull = new Array(0,1,2,3,4,5,6);
var countActive = new Array(0,1,2,3,4,5,6);
function pickRandom(a) {
if(arguments[1].length == 0) {
arguments[1] = arguments[0];
}
var m = Math.floor(Math.random()*arguments[1].length);
chosen = arguments[1].splice(m,1);
return chosen;
}
setInterval(function() {
pickRandom(countFull,countActive);
}, 1000);
これを実行するときは、その関数に対してのみ変数を設定する必要があります。代わりに、arguments [1] = arguments [0]を作成するため、最後に向かってcountFullに影響を与えています。どのようにJavaScriptで変数を参照するだけで、それを消費せず、最終的にはarguments[1]がarguments[0]になりますか。
これが理にかなっていることを願っています。これは、さまざまなjavascript変数がPHPなどの他の言語とどのように比較されるかを私に気づかせています。