javascript for循环问题
本文介绍了javascript for循环问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
var array = [],hash = {},arr1=[]
var arr = [
{
"title":"检测任务情况","type":2,"datas":[{"count":1,"date":"2016-03-09"},{"count":1,"date":"2016-03-08"},{"count":1,"date":"2016-03-03"}]
},
{
"title":"检测任务情况","type":2,"datas":[{"count":1,"date":"2016-03-09"},{"count":1,"date":"2016-03-08"},{"count":1,"date":"2016-03-03"}]
}
]
for(var i= 0,len = arr.length;i<len;i++){
for(var j= 0;j<arr[i].datas.length;j++){
arr1.push(arr[i].datas[j].count)
hash.name = arr[i].title
hash.data = arr1
}
console.log(arr1)
array.push(hash)
console.log(array)
}
我想把arr里的每个的count都取出来 结果循环后 重复添加了
想得到的结果是这样的 [{name:'dddd',data:[1,1,1,]},{name:'dddd',data:[1,1,1,]}]
解决方案
var arr = [
{
"title":"检测任务情况","type":2,"datas":[{"count":1,"date":"2016-03-09"},{"count":1,"date":"2016-03-08"},{"count":1,"date":"2016-03-03"}]
},
{
"title":"检测任务情况","type":2,"datas":[{"count":1,"date":"2016-03-09"},{"count":1,"date":"2016-03-08"},{"count":1,"date":"2016-03-03"}]
}
]
//直接使用for循环
var result1=[];
for(var i= 0,len = arr.length;i<len;i++){
result[i]={
name:arr[i].title,
data:[]
};
for(var j= 0;j<arr[i].datas.length;j++){
result[i].data.push(arr[i].datas[j].count)
}
}
console.log(reuslt1);
//使用数组的map方法
var reuslt=arr.map(function(element){
var datas=element.datas.map(function(element){
return element.count;
});
return {
name:element.title,
data:datas
}
});
console.log(reuslt);
这篇关于javascript for循环问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文