var t = [{value:'待料停'},{value:'运行'},{value:'其他停'},{value:'离线'},{value:'断纱停'},{value:'关机'},{value:'关机'}]
for(var i of t){
var count = 0
for(var j of t){
if(j.value === i.value){
count++
}
}
i.count = count
}
console.log(t)
嫌循环太麻烦,也可以这样简化:
var t = [{value:'待料停'},{value:'运行'},{value:'其他停'},{value:'离线'},{value:'断纱停'},{value:'关机'},{value:'关机'}]
var res = Array.from(t,item =>{
item.count = t.filter(j =>j.value === item.value).length
return item
})
console.log(res)
如果我们想知道数组的大小,只需引用数组的一个属性length。Length属性表示数组的长度,即数组中元素的个数。
语法:
myarray.length //获得数组myarray的长度注意:因为数组的索引总是由0开始,所以一个数组的上下限分别是:0和length-1。如数组的长度是5,数组的上下限分别是0和4。
var arr=[55,32,5,90,60,98,76,54]//包含8个数值的数组arrdocument.write(arr.length) //显示数组长度8
document.write(arr[7]) //显示第8个元素的值54
同时,JavaScript数组的length属性是可变的,这一点需要特别注意。
arr.length=10 //增大数组的长度document.write(arr.length) //数组长度已经变为10
数组随元素的增加,长度也会改变,如下:
var arr=[98,76,54,56,76] // 包含5个数值的数组document.write(arr.length) //显示数组的长度5
arr[15]=34 //增加元素,使用索引为15,赋值为34
alert(arr.length) //显示数组的长度16