2017-02-06 4 views
0

Was ist die "richtige" Möglichkeit, eine Javascript-Sammlung zu formatieren?Korrekte Formatierung für Javascript-Sammlung

Ich versuche jshint auf meine Javascript-Dateien, laufen alle wichtigen Formatierungsprobleme zu bereinigen und korrigieren, aber ich bin eine Tonne Unsinn Fehler wie immer:

Expected a string and instead saw key. 

, weil ich viele Sammlungen definieren wie:

var data = {key: "value"}; 

Ist das nicht legal oder akzeptiertes Javascript?

Offensichtlich kann ich das Problem beheben, indem sie es auf sich ändernde:

var data = {"key": "value"}; 

aber ich möchte lieber nicht selbst eine Tonne zusätzliche Arbeit geben nur eine sinnlose ästhetische Veränderung zu machen. Offensichtlich könnte die erste Form möglicherweise key als eine Variable interpretieren, die den Text "Schlüssel" nicht enthält, aber ich hatte nie ein Problem. Alle Javascript-Beispiele, die ich je gesehen habe, tendieren dazu, die beiden Darstellungen als austauschbar zu behandeln.

+0

Beide Wege sind syntaktisch gültig. Lassen Sie sich nicht zu mehr Ärger bringen, als es wert ist ... obwohl dies eine unpopuläre Meinung zu sein scheint. – Tim

Antwort

0

Nach MDN Creating new objects Beschreibung gibt es nichts falsch mit beiden Möglichkeiten der Definition des Objekts. Tatsächlich gibt es drei verschiedene Möglichkeiten, den Namen des Objekts zu definieren: entweder einen Namen, eine Zahl oder ein String-Literal. Bitte beachten Sie ein Anwendungsbeispiel ...

var car = { manyCars: {a: "Saab", "b": "Jeep"}, 7: "Mazda" }; 
console.log(car.manyCars.b); // Jeep 
console.log(car[7]); // Mazda