Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. JavaScript
  3. JavaScript-Referenz
  4. JavaScript-Fehlerreferenz
  5. SyntaxError: Die Anwendung des 'delete'-Operators auf einen nicht qualifizierten Namen ist veraltet

Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.

View in EnglishAlways switch to English

SyntaxError: Die Anwendung des 'delete'-Operators auf einen nicht qualifizierten Namen ist veraltet

Die JavaScript-strict mode-spezifische Ausnahme „Die Anwendung des 'delete'-Operators auf einen nicht qualifizierten Namen ist veraltet" tritt auf, wenn versucht wird, Variablen mit demdelete-Operator zu löschen.

Nachricht

SyntaxError: Delete of an unqualified identifier in strict mode. (V8-based)SyntaxError: applying the 'delete' operator to an unqualified name is deprecated (Firefox)SyntaxError: Cannot delete unqualified property 'a' in strict mode. (Safari)

Fehlertyp

SyntaxError nur imstrict mode.

Was ist schiefgelaufen?

Normale Variablen in JavaScript können nicht mit demdelete-Operator gelöscht werden. Im strict mode führt ein Löschversuch einer Variablen zu einem Fehler und ist nicht erlaubt.

Derdelete-Operator kann nur Eigenschaften eines Objekts löschen. Objekteigenschaften sind "qualifiziert", wenn sie konfigurierbar sind.

Im Gegensatz zur weit verbreiteten Meinung hat derdelete-Operatornichts mit der direkten Speicherfreigabe zu tun. Das Speichermanagement erfolgt indirekt über das Aufheben von Referenzen, siehe die Seite über dasSpeichermanagement und die Seite desdelete-Operators für weitere Details.

Dieser Fehler tritt nur instrict mode code auf. In nicht-strengem Code gibt die Operation einfachfalse zurück.

Beispiele

Freigeben des Inhalts einer Variablen

Der Versuch, eine einfache Variable im strict mode zu löschen, führt zu einem Fehler:

js
"use strict";var x;// …delete x;// SyntaxError: applying the 'delete' operator to an unqualified name// is deprecated

Um den Inhalt einer Variablen freizugeben, kann man sie aufnull setzen:

js
"use strict";var x;// …x = null;// x can be garbage collected

Siehe auch

Help improve MDN

Learn how to contribute Diese Seite wurde automatisch aus dem Englischen übersetzt.

[8]ページ先頭

©2009-2025 Movatter.jp