2016-06-10 16 views
0

Bitte erklären Sie, was ist mein Parser Fehler in diesem JSON-Objekt.Parse Fehler im JSON Format

db.products.insert({ 
    name: "Microsoft Surface", 
    category: 'Electronics', 
    model: '7G5-33333', 
}) 

PS: JSONLint sagt, aber ich kann nicht herausfinden ...

Error: Parse error on line 1: 
db.products.insert({ 
^ 
Expecting 'STRING', 'NUMBER', 'NULL', 'TRUE', 'FALSE', '{', '[', got 'undefined' 
+0

Ich denke, Ihre Schlüssel sollten Strings auch sein (d. H. Setzen "Name" nicht Namen usw.) – shim

+0

@shim danke für den Vorschlag, ich habe es versucht, aber der Fehler ist immer noch der gleiche. – volna

+1

Das von Ihnen gepostete Beispiel ist * code *, nicht JSON. Warum übergibst du den gesamten Code an JSONLint? Es scheint, dass Sie hier nicht einmal mit JSON arbeiten, warum verwenden Sie JSONLint? Ich werde keinen C-Linter verwenden, wenn ich JavaScript schreibe. Mit anderen Worten: Sie verwenden das falsche Werkzeug für alles, was Sie versuchen zu tun. –

Antwort

1

Entfernen Sie das Komma am Ende (nach der Modellwert).

db.products.insert({ 
    name: "Microsoft Surface", 
    category: 'Electronics', 
    model: '7G5-33333' 
}) 

das Komma Nachdem dort gibt es mehr Schlüssel-Wert-Paare sind, ist also, warum Sie die „fehlenden} nach Eigenschaftsliste“ Fehler sind zu sehen.

+0

Danke Shim, ich werde vorsichtiger mit meinen Kommas sein. – volna

0

Sie brauchen etwas wie folgt aus:

db.products.insert({ 
     "name": "Microsoft Surface", 
     "category": "Electronics", 
     "model": "7G5-33333" 
    })