私はjavascriptを学習していて、javascriptでブール配列を初期化したいと思っています。
私はこれをやってみました:
var anyBoxesChecked = [];
var numeroPerguntas = 5;
for(int i=0;i<numeroPerguntas;i++)
{
anyBoxesChecked.Push(false);
}
しかし、それは機能しません。
グーグルした後、私は this 方法だけを見つけました:
public var terroristShooting : boolean[] = BooleanArrayTrue(10);
function BooleanArrayTrue (size : int) : boolean[] {
var boolArray = new boolean[size];
for (var b in boolArray) b = true;
return boolArray;
}
しかし、これは配列を初期化するだけでは非常に難しい方法だと思います。それを行う別の方法を知っている人はいますか?
デバッグでキャッチされるコードでエラーが発生していました。 int
はJSキーワードではありません。 var
を使用すると、コードは完全に機能します。
var anyBoxesChecked = [];
var numeroPerguntas = 5;
for (var i = 0; i < numeroPerguntas; i++) {
anyBoxesChecked.Push(false);
}
私はそれが遅いことを知っていますが、ブール値で配列を初期化するこの効率的な方法を見つけました
var numeroPerguntas = 5;
var anyBoxesChecked = new Array(numeroPerguntas).fill(false);
console.log(anyBoxesChecked);
Array.applyとmapを使用できます...
var numeroPerguntas = 5;
var a = Array.apply(null, new Array(numeroPerguntas)).map(function(){return false});
alert(a);
整数演算とビット演算を使用する方が効率的ではないでしょうか?
<script>
var boolarray = 0;
function comparray(indexArr) {
if (boolarray&(2**(indexArr))) {
boolarray -= 2**(indexArr);
//do stuff if true
} else {
boolarray += 2**(indexArr);
//do stuff if false
}
}
</script>