Читать книгу JavaScript – Das Handbuch für die Praxis - David Flanagan - Страница 109

4.12.3eval() im strict-Modus

Оглавление

Der strict-Modus (siehe 5.6.3) unterwirft das Verhalten der Funktion eval() und sogar die Verwendung des Identifiers »eval« weiteren Einschränkungen. Wird eval() aus Code aufgerufen, der im strict-Modus ausgeführt wird, oder beginnt der auszuwertende Code selbst mit der Direktive "use strict", führt eval() ein lokales Eval mit einer privaten Variablenumgebung aus. Das bedeutet, dass im strict-Modus evaluierter Code lokale Variablen abfragen und setzen, aber keine neuen Variablen oder Funktionen im lokalen Bereich definieren kann.

Außerdem gleicht der strict-Modus eval() einem Operator noch stärker an, indem er »eval« praktisch zu einem reservierten Wort umfunktioniert. Es ist nicht erlaubt, die eval()-Funktion mit einem neuen Wert zu überschreiben. Und es ist nicht erlaubt, eine Variable, eine Funktion, einen Funktionsparameter oder einen Parameter eines catch-Blocks mit dem Namen »eval« zu deklarieren.

JavaScript  –  Das Handbuch für die Praxis

Подняться наверх