用javascript创建对象的dynamic数组

creating dynami Array of object in javascript

本文关键字:dynamic 数组 创建对象 javascript      更新时间:2023-09-26

我想创建一个行如下的数组:

 dateMetric : [{date : DatNoDuplicate[i] , ClickCount : 0 , Retweet : 0 , LikeCount : 0 , ShareCount : 0, Tweet : 0, CommentCount: 0, SumMetric: 0}, 
           {date : DatNoDuplicate[i] , ClickCount : 0 , Retweet : 0 , LikeCount : 0 , ShareCount : 0, Tweet : 0, CommentCount: 0, SumMetric: 0}, 
          ]

但是行中的属性(ClickCount、Retweet、LikeCount、ShareCount、Tweet、CommentCount)将从其他数组中定义

数组名称Metric包含此行名称((ClickCount、Retweet、LikeCount…)

因此,如果nameMetric中有元素(如Number、TweetNumber、…..),那么数组dateMetric将包含如下行:

日期度量

   date : DatNoDuplicate[i] , likeNumber: 0 , TweetNumber: 0 , ... , SumMetric: 0})

请帮忙,如果解释不好,我可以重新表述这个问题。

试试这个:http://jsfiddle.net/8cetN/

您可以查找名称数组来定义每一行对象的属性:

var nameMetric = ["ClickCount", "Retweet", "LikeCount", "ShareCount", "Tweet", "CommentCount", "SumMetric"];

var numRows = 4;
var dateMetric = [];
for (var i=0; i<numRows; i++) {
    var row ={};
    nameMetric.forEach(function(name){
        row[name] = 0; // Look up and place the actual value here.   

    });       
    dateMetric.push(row); 
}

console.log(JSON.stringify(dateMetric));