我正在尝试使用JSON.Parse将javscript字符串转换为Object
这是代码段
var row = '{ "key1": true, "header": "Title A", "Size": 100}';
$.each(elements, function (i, item) {
let headerDisplay = '';
headerDisplay = this.title;
row+=',';
row += '{ "key1": true, "header": "'+headerDisplay+'", "Size": 100}';
});
var object=JSON.parse(row);
我跌倒了错误
Unexpected token , in JSON at position 177
请让我知道可能是什么问题,以及如何将字符串转换为对象。
我期望输出类似于 预期输出类似于
var finalObject = [
{ "key1": true, "header": "Title A", "Size": 100 },
{ "key1": true, "header": "Title1", "Size": 100 },
{ "key1": true, "header": "Title2", "Size": 100 },
...
]
答案 0 :(得分:0)
问题中的代码表明没有理由使用JSON:
let finalObject = [
{
key1: true,
header: "Title A",
Size: 100,
},
];
$.each(elements, (i, item) => {
finalObject.push({
key1: true,
header: item.title,
Size: 100,
});
});
答案 1 :(得分:0)
考虑制作一个数组,然后填充该数组。
var elements = [{
title: "Item B"
}, {
title: "Item C"
}];
var row = [];
row.push(JSON.parse('{ "key1": true, "header": "Title A", "Size": 100 }'));
$.each(elements, function(i, item) {
row.push({
key1: true,
header: item.title,
Size: 100
});
});
console.log("Final:", row);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
参考: