1. ホーム
  2. ジャバスクリプト

[解決済み】Uncaught SyntaxError: JSON.parse で予期しないトークンが発生した。

2022-04-04 01:52:16

質問

3行目のエラーの原因は何ですか?

var products = [{
  "name": "Pizza",
  "price": "10",
  "quantity": "7"
}, {
  "name": "Cerveja",
  "price": "12",
  "quantity": "5"
}, {
  "name": "Hamburguer",
  "price": "10",
  "quantity": "2"
}, {
  "name": "Fraldas",
  "price": "6",
  "quantity": "2"
}];
console.log(products);
var b = JSON.parse(products); //unexpected token o

コンソールを開いてエラーを表示する

解決方法を教えてください。

products はオブジェクトです。 (オブジェクト・リテラルから作成)

JSON.parse() を変換するために使用されます。 文字列 JSON記法を含むJavascriptオブジェクトに変換します。

あなたのコードは、オブジェクトを文字列に変換し、( .toString() を使用して、JSONテキストとしてパースしようとします。

デフォルトの .toString() は以下を返します。 "[object Object]" これは有効なJSONではないので、エラーになります。