我有2个字符串,我需要构造以下结果(可能是JSON):
indexLine:“id,first,last,email \ n”
dataLine:“555,John,Doe,jd @ gmail.com”
结果:“id:555,first:john,....;
交替加入这两个字符串的最快方法是什么?
我写了这个 - 但它似乎太直接了:
function convertToObject(indexLine, dataLine) {
var obj = {};
var result = "";
for (var j = 0; j < dataLine.length; j++) {
obj[indexLine[j]] = dataLine[j]; /// add property to object
}
return JSON.stringify(obj); //-> String format;
}
感谢。
答案 0 :(得分:2)
var indexLine = "id,first,last,email";
var dataLine = "555,John,Doe,jd@gmail.com";
var indexes = indexLine.split(',');
var data = dataLine.split(',');
var result = [];
indexes.forEach(function (index, i) {
result.push(index + ':' + data[i]);
});
console.log(result.join(',')); // Outputs: id:555,first:John,last:Doe,email:jd@gmail.com
答案 1 :(得分:0)
如果您要创建多个对象实例,则可以使用此代码。
var newarray = [],
thing;
for(var y = 0; y < rows.length; y++){
thing = {};
for(var i = 0; i < columns.length; i++){
thing[columns[i]] = rows[y][i];
}
newarray.push(thing)
}