【问题标题】:How to initialize a boolean array in javascript如何在javascript中初始化一个布尔数组
【发布时间】:2015-01-18 08:43:21
【问题描述】:

我正在学习 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;
 }

但我发现这只是初始化数组的一种非常困难的方法。有人知道另一种方法吗?

【问题讨论】:

    标签: javascript arrays boolean


    【解决方案1】:

    您可以使用Array.from Array.from({length: 5}, i =&gt; i = false);

    【讨论】:

      【解决方案2】:

      它也可以是一种解决方案

      var boolArray = [true,false];
      console.log(boolArray);
      

      【讨论】:

        【解决方案3】:

        使用整数和位运算不是更有效吗?

        <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>
        

        【讨论】:

          【解决方案4】:

          我知道已经很晚了,但我发现了这种用布尔值初始化数组的有效方法

              var numeroPerguntas = 5;     
              var anyBoxesChecked = new Array(numeroPerguntas).fill(false);
              console.log(anyBoxesChecked);

          【讨论】:

          【解决方案5】:

          你可以使用 Array.apply 和 map...

          var numeroPerguntas = 5;  
          var a = Array.apply(null, new Array(numeroPerguntas)).map(function(){return false});
          alert(a);

          【讨论】:

            【解决方案6】:

            您遇到了调试会发现的代码错误。 int 不是 JS 关键字。使用var,您的代码就能完美运行。

            var anyBoxesChecked = [];
            var numeroPerguntas = 5;     
            for (var i = 0; i < numeroPerguntas; i++) {
              anyBoxesChecked.push(false);
            }
            

            DEMO

            【讨论】:

            • 出门时别忘了给女服务员小费 :)
            • @AlbertoCrespo,顺便说一下,您提供的第二个代码示例是 UnityScript 而不是 JavaScript。它们在某些方面很相似,但这些代码永远不会在 Unity 环境之外运行。
            • 谢谢,我不知道那个存在!
            • 惊人的答案非常有用
            猜你喜欢
            • 2016-12-27
            • 1970-01-01
            • 1970-01-01
            • 2019-01-16
            • 2011-12-26
            • 1970-01-01
            • 1970-01-01
            • 2019-04-18
            • 2010-12-28
            相关资源
            最近更新 更多