我需要知道数组内容是否大于0

时间:2014-07-20 07:30:18

标签: javascript arrays object

这是摘要:

我为数组提示了3个数值,如果数组元素的总数大于0,我需要显示" el funcionamiento no es infinito"否则" es infinito"

它没有工作,因为我认为我没有计算数组中的所有元素danio_Total

这是代码,谢谢!


var comprobarTiempoFuncionamiento = function(i) {

    if (danio_Total.value > 0) {
        document.write("el funcionamiento no es infinito");
    } else {document.write("El tiempo de funcionamiento es infinito");}

}

3 个答案:

答案 0 :(得分:1)

这比听起来更容易,如果你有一个数组,而你想要做的就是检查总和是否大于零,而不是你可以反转它并说如果所有值都是零,则总和只会为零数组为零(除非你有负数),所以这个

[0,0,0,0]

将是唯一一种总和为零的数组。

由于零是假的,你可以做到

if ( danio_Total.filter(Boolean).length ) {
    document.write("el funcionamiento no es infinito");
} else {
    document.write("El tiempo de funcionamiento es infinito");
}

对布尔值进行过滤时,任何正整数都是真的,所以

[0,0,9].filter(Boolean).length; // returns 1, truthy
[0,3,9].filter(Boolean).length; // returns 2, truthy
[0,0,0].filter(Boolean).length; // returns 0, falsy

所以这就是你真正需要的。

答案 1 :(得分:0)

如果你想知道数组的长度,试试这个:

   for (i = 0; i < array.length; i++){
    sum += array[i]; 
   }

答案 2 :(得分:0)

尝试像贝洛一样

 var total = danio_toal.reduce(function(a,b){
                 return a+b;
             });

 if (total > 0) {
    document.write("el funcionamiento no es infinito");
} else {document.write("El tiempo de funcionamiento es infinito");}