我怎样才能使这个JSON.stringify正常工作

时间:2019-10-29 13:31:47

标签: javascript json

我有一个小问题可以将数组放入想要的json中。我编写了以下代码:

var arrData = [{label:Test,value:199.12}, {label:Test2,value:1024}]     
var data = [];
for (var i = 0; i < arrData.length; i++) {
  data.push(JSON.stringify({
    label: arrData[i][2],
    value: arrData[i][3]
  }).replace(/\"/g, "").replace("\\r", ""))
}

它也可以正常工作。但我确实希望它采用以下格式:

  

{标签:“食物”,值:90},

我想在标签数据上使用'',并且要删除json外部的双“”标点符号。由于我当前的json看起来像这样:

"{label:Test,value:199.12}", "{label:Test2,value:1024}", 

1 个答案:

答案 0 :(得分:1)

{ label: 'Food', value: 90 }是无效的JSON,因此您无法使用JSON.stringify创建它。

它不是任何标准的序列化格式(尽管它是有效的JavaScript文字),因此,如果要序列化数据,则需要编写一个自定义序列化器。

您可以遍历对象的属性,并将它们,关联的值以及格式要求的任何引号和逗号附加到字符串上。