是什么导致了第三行上的错误?

Var product = [{ “名称”:“披萨”, “价格”:“10”, “数量”:“7” },{ “名称”:“Cerveja”, “价格”:“12”, “数量”:“5” },{ “名称”:“汉堡”, “价格”:“10”, “数量”:“2” },{ “名称”:“Fraldas”, “价格”:“6”, “数量”:“2” }); console.log(产品); var b = JSON.parse(products);//意外令牌o

打开控制台以查看错误


当前回答

使用eval。它将JavaScript表达式/代码作为字符串,并计算/执行它。

eval(inputString);

其他回答

使用eval。它将JavaScript表达式/代码作为字符串,并计算/执行它。

eval(inputString);

哦,天哪,之前所有答案中的解决方案对我都不起作用。我刚才也遇到了类似的问题。我设法解决了它与包装与报价。请看截图。喔!

原:

Var product = [{ “名称”:“披萨”, “价格”:“10”, “数量”:“7” },{ “名称”:“Cerveja”, “价格”:“12”, “数量”:“5” },{ “名称”:“汉堡”, “价格”:“10”, “数量”:“2” },{ “名称”:“Fraldas”, “价格”:“6”, “数量”:“2” }); console.log(产品); var b = JSON.parse(products);//意外令牌o

[
  {
    "name": "Pizza",
    "price": "10",
    "quantity": "7"
  },
  {
    "name": "Cerveja",
    "price": "12",
    "quantity": "5"
  },
  {
    "name": "Hamburguer",
    "price": "10",
    "quantity": "2"
  },
  {
    "name": "Fraldas",
    "price": "6",
    "quantity": "2"
  }
]

下面是您可以解析的完美JSON内容。

Products是一个数组,可以直接使用:

var i, j;

for(i=0; i<products.length; i++)
  for(j in products[i])
    console.log("property name: " + j, "value: " + products[i][j]);

似乎您想要对对象进行字符串化,而不是解析。所以这样做:

JSON.stringify(products);

错误的原因是JSON.parse()期望一个String值,而products是一个Array。

注意:我认为它尝试json。parse('[object Array]'),它会抱怨在[后面没有token o。