2010-07-07 28 views

Antwort

10

Es gibt keinen Unterschied in JavaScript. Sie müssen jedoch Eigenschaftsnamen angeben, die zufällig reservierte Wörter sind (z. B. class) oder Namen, die ungültige Zeichen enthalten (z. B. first-name).

+1

Also, ich denke, das ist wirklich nur eine Frage der Codierung Stil. Aber mit den Beschränkungen, die JavaScript durch das notwendige Zitieren von reservierten Wörtern auferlegt wird, sollte es konsistenter sein, Eigenschaften/Methoden ständig zu zitieren. –

+2

@jindrichm: Ja, Sie könnten alle Eigenschaftennamen konsistent angeben, auf der anderen Seite könnten Sie aber auch konsistente Eigenschaftsnamen verwenden, die gültige Variablennamen sind. Im Allgemeinen tendiere ich dazu, nicht zu zitieren, aber ich bin keinem der beiden Stile besonders verpflichtet ... Beachten Sie, dass Sie bei Verwendung von Eigenschaftsnamen, die keine gültigen Variablennamen sind, die Punktnotation nicht für den Zugriff auf die Eigenschaften verwenden können: 'myObject.myProperty', aber Sie können nur die Indexnotation verwenden:' myObject ['myProperty'] '. –

5

Bis ES 3 müssen Sie reserved words der Sprache (neu, Standard, Klasse, etc.) angeben. In der neuen Version wird dies jedoch unnötig sein.

Aber da ES 5 noch nicht gut unterstützt wird, müssen Sie alle reserved words notieren.

Wenn Sie nicht die vollständige Liste der Wörter auswendig lernen möchten, sollten Sie besser alles zitieren.

Extra: Aus diesem Grund haben Sie keine Eigenschaften float und class für ein Element. Sie müssen stattdessen cssFloat/styleFloat und className verwenden.

Eine weitere Ergänzung ist, dass Sie jeden Schlüssel in einer JSON-Zeichenfolge angeben müssen. Der Grund ist, dass sie wollten, dass sie sprachunabhängig ist, um dumme Einschränkungen wie die in ES3 nicht zu stören.

+0

Ich denke, Sie beziehen sich auf * ES3 *, weil * ES3.1 * wurde einfach umbenannt (http://en.wikipedia.org/wiki/ECMAScript#ECMAScript.2C_5th_Edition) zu * ES5 *, wenn ES4 aufgegeben wurde. – CMS

+0

ja ich tippte einfach zu schnell, und vergaß zu überprüfen, thx für den Tippfehler ... :) – galambalazs

Verwandte Themen