Reputation: 1802
Is it possible to convert a string var:
data="data1,data2,data3,data4"
to an object literal
data={
"data1":"data2",
"data3":"data4"
}
Thank you!
Upvotes: 1
Views: 3572
Reputation: 163238
This is trivial:
function object_from_string(str) {
var parts = str.split(','),
obj = {};
for(var i = 0, j = parts.length; i < j; i+=2;) {
obj[parts[i]] = parts[i+1];
}
return obj;
}
var data = "data1,data2,data3,data4";
var obj = object_from_string(data);
for(var k in obj) {
if(obj.hasOwnProperty(k)) {
console.log(k + ' = ' + obj[k]);
}
}
Output:
data1 = data2
data3 = data4
Upvotes: 6
Reputation: 522042
var arr = data.split(',');
var parsedData = {};
for (var i = 0; i < arr.length; i += 2) {
parsedData[arr[i]] = arr[i + 1];
}
Upvotes: 6