Manipulationssicheres Javascript-ObjektDieses Ding wird selten verwendet und ich persönlich finde, dass es nicht sehr nützlich ist. Es kann jedoch als Werkzeug zum Angeben verwendet werden, haha, fangen wir an. . 1. Nicht erweiterbare ObjekteObjekte sind standardmäßig erweiterbar, das heißt, dass ihnen jederzeit Eigenschaften und Methoden hinzugefügt werden können. Jetzt können Sie dieses Verhalten mit der Methode Object.preventExtensions(object) ändern, sodass Sie dem Objekt keine Eigenschaften und Methoden mehr hinzufügen können. Zum Beispiel: var person={name : 'jack'}; Objekt.preventExtensions(Person); Person.Alter=13; console.log(Person.Alter);///aufheben Obwohl Sie dem Objekt keine neuen Mitglieder hinzufügen können, sind die vorhandenen Mitglieder hiervon überhaupt nicht betroffen und Sie können Ihre vorhandenen Mitglieder weiterhin ändern und löschen. Darüber hinaus können Sie mit der Methode isExtensible() bestimmen, ob das Objekt erweiterbar ist. Zum Beispiel: var person={name : 'jack'}; Alarm (Objekt.isExtensible (Person)); //wahr Objekt.preventExtensions(Person); Alarm (Object.istExtensible (Person)); //falsch 2. Versiegelte ObjekteDie zweite von ECMAScript 5 für Objekte definierte Schutzebene sind versiegelte Objekte. Verwenden Sie die Methode Object.seal(object), um ein Objekt in ein versiegeltes Objekt zu ändern. Versiegelte Objekte sind nicht erweiterbar und das Attribut [[configurable]] vorhandener Mitglieder wird auf „false“ gesetzt. Dies bedeutet, dass Eigenschaften und Methoden nicht gelöscht werden können, da Sie Object.defineProperty() nicht verwenden können, um Daten zu ändern und auf deren Eigenschaften zuzugreifen, und umgekehrt. Der Attributwert kann jedoch geändert werden. var person = {name:'tom'}; Objekt.Siegel(Person); Person.Alter=12; console.log(Person.Alter);//aufheben person.name löschen; konsole.log(person.name);//tom person.name="jack"; Alarm (Person.Name);//Jack Verwenden Sie die Methode Object.isSealed(), um zu bestimmen, ob ein Objekt versiegelt ist. Da versiegelte Objekte nicht erweiterbar sind, gibt die Verwendung von Object.istExtensible() zum Erkennen versiegelter Objekte ebenfalls false zurück (d. h. nicht erweiterbar). var person = {name:'tom'}; alert(Object.isExtensible(person)); ///true, erweiterbar alert(Object.isSealed(person)); ////false, unverschlüsselt Object.seal(person); alert(Object.isExtensible(person)); ///false, nicht erweiterbar alert(Object.isSealed(person)); ////true, bereits verschlüsselt 3. Gefrorene ObjekteDie strengste Stufe der Manipulationsprävention sind eingefrorene Objekte. Eingefrorene Objekte sind weder erweiterbar noch versiegelt, und das Attribut [[Writable]] der Dateneigenschaften des Objekts wird auf „false“ gesetzt. Wenn eine Set-Funktion definiert ist, ist die Accessor-Eigenschaft immer noch beschreibbar. Jetzt können Sie die Methode Object.freeze(object) verwenden, um das Objekt in ein eingefrorenes Objekt zu ändern. var person={name : 'tony'}; Objekt.einfrieren(Person); Person.Alter=12; Alarm (Person.Alter);//aufheben person.name löschen; Alarm (Person.Name);//Tony Person.Name = "Jack"; Alarm (Person.Name);//Tony Verwenden Sie die Methode Object.isFrozen(), um festzustellen, ob ein Objekt eingefroren ist. Da eingefrorene Objekte sowohl nicht erweiterbare als auch versiegelte Objekte sind, verwenden Sie isExtensible() var person = {name:'tom'}; alert(Object.isExtensible(person));///true, erweiterbar alert(Object.isSealed(person));////false, unverschlüsselt alert(Object.isFrozen(person));////false, unverschlüsselt Object.seal(person); alert(Object.isExtensible(person)); ///false, nicht erweiterbar alert(Object.isSealed(person)); ////true, bereits verschlüsselt alert(Object.isFrozen(person)); ////true, bereits eingefroren Oben finden Sie den detaillierten Inhalt des Anwendungsbeispiels für manipulationssichere JavaScript-Objekte. Weitere Informationen zu manipulationssicheren JavaScript-Objekten finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM! Das könnte Sie auch interessieren:
|
<<: Erläuterung verschiedener Möglichkeiten zum Ausführen von Tomcat unter Linux
>>: Tutorial zur Installation und Konfiguration der entpackten Version von MySql unter Windows 10
Inhaltsverzeichnis Vorwort 1. Vorbereitung 2. Ins...
Einführung in XHTML-Tags <br />Vielleicht is...
Ich habe viel online gesucht und festgestellt, da...
Es wird empfohlen, zunächst mit dem Befehl sudo s...
Die Betriebsumgebung dieses Tutorials: Windows 7-...
Linux ist ein offenes System. Im Internet sind vi...
Schritte zur Annotation von Metadeklarationen: 1. ...
Ref-Definition: Wird verwendet, um Referenzinform...
Inhaltsverzeichnis Zusammenfassen Manchmal müssen...
Installieren Sie Grafana. Die offizielle Website ...
Dieser Artikel zeichnet die Installations- und Ko...
Nur den oberen Rand anzeigen <table frame=above...
Inhaltsverzeichnis 1 Master-Slave-Lese-/Schreibtr...
Vorwort: Partitionierung ist ein Tabellenentwurfs...
Vorwort Jeder weiß, dass das Partitionsfeld Teil ...