这是我的工作职能。如何动态创建dataObject? (我假设我知道有多少列) 我尝试使用eval函数动态创建变量'value + i',但没有成功。
function parseCSV(rows){
dataProvider = [];
for (var i = 0; i < rows.length; i++){
if (rows[i]) {
var column = rows[i].split(",");
var date = someFunction(column[0]);
var value1 = column[1];
var value2 = column[2];
var dataObject = {date:date, value1:value1, value2:value2};
dataProvider.push(dataObject);
}
}
}
谢谢你
答案 0 :(得分:2)
方法很少。
首先:
var hash = new object();
hash["date"] = date;
hash["value1"] = value1;
hash["value2"] = value2;
第二
var hash = {};
hash["date"] = date;
hash["value1"] = value1;
hash["value2"] = value2;
第三
var hash = {"date" : date, "value1" : value1, "value2" : value2};
答案 1 :(得分:0)
如果您不知道有多少列,但想要创建一个充满valueX的对象:
var date = someFunction(column[0]);
var dataObject = {date: date};
for (var i=1; i < column.length; i++){
dataObject['value' + i] = column[i];
}
而不是使用value1,...如果可能,您应该尝试使用更具描述性的名称。