Wenn ich diese scheinbar harmlose Code-Snippet getippt:Was ist das `name` Schlüsselwort in JavaScript?
values.name
gedit hervorgehoben Name als Schlüsselwort. Name ist jedoch nicht auf den Seiten aufgeführt, die mit an answer to a question about reserved keywords verknüpft sind. Ich habe auch ein paar triviale Tests in SpiderMonkey gemacht, aber Name schien wie eine gewöhnliche Kennung zu handeln.
Eine Google-Suche hat mir auch nicht viel erzählt. Ich habe jedoch gefunden a page listing name in "Other JavaScript Keywords". Meine Vermutung ist, dass Name ist eine Funktion oder ein Mitglied von einigen DOM-Element und nicht in den Namespace eindringen.
Ist Name wirklich ein Schlüsselwort in JavaScript? Wenn ja, was macht es?
'name' ist (wurde) als Attribut des' a'-Elements verwendet, daher könnte es im DOM-Code vorkommen. Vielleicht ist dies der Grund, warum Ihr Redakteur es hervorhebt. – Thomas
Gedit hebt tatsächlich 'name' als Eigenschaft hervor. Im klassischen Farbschema verwenden Eigenschaften und Schlüsselwörter die gleiche Stildefinition. Weil die Parsingfähigkeiten von gedit ziemlich begrenzt sind, obwohl nur ein kleiner Satz wichtiger Eigenschaftsnamen mit diesem Stil hervorgehoben wird, zum Beispiel regexp Eigenschaften wie 'global',' source', 'lastIndex' und Funktionseigenschaften wie' prototype', 'length 'und' name'. – Robert
In Chrome verhält sich der Name merkwürdig wie ein globales Objekt von localhost. d. h. Innerhalb einer Funktion ändert var name = '...' den ursprünglichen window.name und daher 'name; ist außerhalb des Fn-Bereichs verfügbar. Allerdings, wenn ich es separat in der Konsole und Plunkr es zeigt undefined/oder Original-Fenster-Objekt. In IE sein Verhalten normal (d. H. Undefined/leer in localhost) – Amitesh