Als «ecmascript-5» getaggte Fragen

ECMAScript ist der Name des Ecma International Standard 262. Es basiert auf der Skriptsprache JavaScript, die Netscape zur Standardisierung an Ecma geliefert hat. Die 5. Ausgabe ist eine Aktualisierung der Spezifikation der 3. Ausgabe nach der Stornierung der 4. Ausgabe. Es werden neue Funktionen hinzugefügt, darunter der strikte Modus, Getter und Setter, ein JSON-Objekt und neue Methoden für Objekt-, Array-, Datums- und Funktionsprototypen.


7
Holen Sie sich ein Array von Objektschlüsseln
Ich möchte die Schlüssel eines JavaScript-Objekts als Array erhalten, entweder in jQuery oder in reinem JavaScript. Gibt es einen weniger ausführlichen Weg als diesen? var foo = { 'alpha' : 'puffin', 'beta' : 'beagle' }; var keys = []; for (var key in foo) { keys.push(key); }

1
Unterschied zwischen Einfrieren und Versiegeln
Ich habe gerade von den JavaScript-Methoden freezeund gehört seal, mit denen jedes Objekt unveränderlich gemacht werden kann. Hier ist ein kurzes Beispiel für die Verwendung: var o1 = {}, o2 = {}; Object.freeze(o2); o1["a"] = "worked"; o2["a"] = "worked"; alert(o1["a"]); //prints "worked" alert(o2["a"]); //prints "undefined" Was ist der Unterschied zwischen …

12
Was macht [] .forEach.call () in JavaScript?
Ich habe mir einige Codeausschnitte angesehen und mehrere Elemente gefunden, die eine Funktion über eine Knotenliste aufrufen, wobei forEach auf ein leeres Array angewendet wurde. Zum Beispiel habe ich so etwas wie: [].forEach.call( document.querySelectorAll('a'), function(el) { // whatever with the current node }); aber ich kann nicht verstehen, wie es …


2
Javascript Reduzieren Sie ein leeres Array
Wenn ich das Array verkleinere, versuche ich, die Zahl Null zu erhalten, aber ich verstehe das Verhalten der Funktion nicht klar [].reduce(function(previousValue, currentValue){ return Number(previousValue) + Number(currentValue); }); Ergebnis TypeError: Reduce of empty array with no initial value Wenn das Array leer ist, kann ich es anscheinend nicht reduzieren [""].reduce(function(previousValue, …


17
Dynamisch festgelegte Eigenschaft eines verschachtelten Objekts
Ich habe ein Objekt, das eine beliebige Anzahl von Ebenen tief sein kann und vorhandene Eigenschaften haben kann. Zum Beispiel: var obj = { db: { mongodb: { host: 'localhost' } } }; Darauf möchte ich Eigenschaften wie folgt setzen (oder überschreiben): set('db.mongodb.user', 'root'); // or: set('foo.bar', 'baz'); Wobei die …

1
Warum ist 019 kein JavaScript-Syntaxfehler? Oder warum ist 019> 020
Wenn ich 019 > 020die JavaScript-Konsole eingebe (sowohl in Chrome als auch in Firefox getestet), erhalte ich die Antwort true. Dies ist darauf zurückzuführen, 020dass es als OctalIntegerLiteral(gleich 16) 019interpretiert wird, während es anscheinend als DecimalLiteral(und gleich 19) interpretiert wird . Da 19ist größer als 16, 019 > 020ist true. …



6
Gibt es Leistungsvorteile beim "Sperren" von JavaScript-Objekten?
JavaScript 1.8.5 (ECMAScript 5) fügt einige interessante Methoden hinzu, die zukünftige Änderungen eines übergebenen Objekts mit unterschiedlichem Grad an Gründlichkeit verhindern: Object.preventExtensions(obj) Object.seal(obj) Object.freeze(obj) Vermutlich geht es hauptsächlich darum, Fehler zu erkennen: Wenn Sie wissen, dass Sie ein Objekt nach einem bestimmten Punkt nicht mehr ändern möchten, können Sie es …
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.