Heim Web-Frontend js-Tutorial Detaillierte Erläuterung der Verwendung der Funktion eval() in JavaScript_Javascript-Kenntnissen

Detaillierte Erläuterung der Verwendung der Funktion eval() in JavaScript_Javascript-Kenntnissen

May 16, 2016 pm 03:25 PM

Die Funktion

eval() wertet einen JavaScript-String aus und führt ihn als Skriptcode aus.

Wenn das Argument ein Ausdruck ist, führt die Funktion eval() den Ausdruck aus. Wenn das Argument eine Javascript-Anweisung ist, führt eval() die Javascript-Anweisung aus.

Grammatik

Code kopieren Der Code lautet wie folgt:

eval(string)

参数 描述
string 必需。要计算的字符串,其中含有要计算的 JavaScript 表达式或要执行的语句。

Detaillierte Erläuterung der Verwendung der Funktion eval():

Diese Funktion wird möglicherweise nicht allzu häufig verwendet, hat aber in einigen Fällen eine große Wirkung. Hier finden Sie eine Einführung in die Verwendung der Funktion eval().

Diese Funktion kann einen String str als Parameter akzeptieren und diesen str als einen Teil des Javascript-Codes ausführen. Wenn das Ausführungsergebnis von str ein Wert ist, wird dieser Wert zurückgegeben, andernfalls wird undefiniert zurückgegeben. Wenn der Parameter keine Zeichenfolge ist, wird der Parameter direkt zurückgegeben. Das Beispiel lautet wie folgt:

eval("var a=1");//声明一个变量a并赋值1。
eval("2+3");//执行加运算,并返回运算值。
eval("mytest()");//执行mytest()函数。
eval("{b:2}");//声明一个对象。
Nach dem Login kopieren

Besondere Aufmerksamkeit sollte dem obigen Code gewidmet werden. Wenn Sie dieses Objekt zurückgeben möchten, müssen Sie eine weitere Klammerebene außerhalb des Objekts verschachteln:

Code kopieren Der Code lautet wie folgt:

eval("({b:2})");

Der obige Inhalt stellt kurz die Verwendung der Funktion eval() vor, die relativ einfach zu verstehen ist. Das Verwirrendste an dieser Funktion ist ihr Umfang. Lassen Sie uns den relevanten Inhalt anhand von Beispielen vorstellen:


function a(){ 
 eval("var x=1"); 
 console.log(x); 
} 
a(); 
console.log(x); 
Nach dem Login kopieren
Im obigen Code kann die erste Funktion „alert()“ 1 anzeigen, während die zweite einen Fehler meldet, da x undefiniert ist.

Aus der obigen Leistung kann geschlossen werden, dass die Funktion eval() keinen neuen Bereich erstellt und dass ihr Bereich der Bereich ist, in dem sie sich befindet. Dies gilt für alle gängigen Browser, aber manchmal ist es notwendig, den Gültigkeitsbereich der Funktion eval() auf den globalen Gültigkeitsbereich festzulegen. Natürlich kann eval() im globalen Gültigkeitsbereich verwendet werden, in tatsächlichen Anwendungen ist dies jedoch häufig der Fall Die Verwendung dieser Funktion im globalen Bereich kann mit window.eval() implementiert werden. Der obige Code kann beispielsweise wie folgt transformiert werden:

function a(){ 
 window.eval("var x=1"); 
 console.log(x); 
} 
a(); 
console.log(x); 
Nach dem Login kopieren
Im obigen Code können beide Alert()-Anweisungen normalerweise 1 angezeigt werden. Diese Methode ist jedoch in Standardbrowsern möglich, aber die Leistung in IE8 und Browsern unter IE8 ist immer noch dieselbe wie bei eval (), und der Bereich ist der Bereich, in dem sie sich befinden. Zu diesem Zeitpunkt können Sie das einzigartige window.execScript () des IE-Browsers verwenden, um das Problem der Browser IE8 und IE8 zu lösen. Um mit allen gängigen Browsern kompatibel zu sein, wird der Code wie folgt geändert:


function a(){ 
 if(window.execScript){ 
  window.execScript("var x=1"); 
 } 
 else{ 
  window.eval("var x=1"); 
 } 
 console.log(x); 
} 
a(); 
console.log(x); 
Nach dem Login kopieren
Wenn der Browser window.execScript() unterstützt, verwenden Sie diese Funktion. Wenn dies nicht der Fall ist, verwenden Sie window.eval(). Dies kann das Problem von IE8 und Browsern unter IE8 lösen.

Der obige Inhalt ist eine detaillierte Erklärung der Verwendung der Funktion eval() in JavaScript, die vom Herausgeber geteilt wurde. Ich hoffe, er gefällt Ihnen.

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Was soll ich tun, wenn ich auf den Codendruck auf Kleidungsstücke für Front-End-Thermalpapier-Quittungen stoße? Was soll ich tun, wenn ich auf den Codendruck auf Kleidungsstücke für Front-End-Thermalpapier-Quittungen stoße? Apr 04, 2025 pm 02:42 PM

Häufig gestellte Fragen und Lösungen für das Ticket-Ticket-Ticket-Ticket in Front-End im Front-End-Entwicklungsdruck ist der Ticketdruck eine häufige Voraussetzung. Viele Entwickler implementieren jedoch ...

Wer bekommt mehr Python oder JavaScript bezahlt? Wer bekommt mehr Python oder JavaScript bezahlt? Apr 04, 2025 am 12:09 AM

Es gibt kein absolutes Gehalt für Python- und JavaScript -Entwickler, je nach Fähigkeiten und Branchenbedürfnissen. 1. Python kann mehr in Datenwissenschaft und maschinellem Lernen bezahlt werden. 2. JavaScript hat eine große Nachfrage in der Entwicklung von Front-End- und Full-Stack-Entwicklung, und sein Gehalt ist auch beträchtlich. 3. Einflussfaktoren umfassen Erfahrung, geografische Standort, Unternehmensgröße und spezifische Fähigkeiten.

Entmystifizieren JavaScript: Was es tut und warum es wichtig ist Entmystifizieren JavaScript: Was es tut und warum es wichtig ist Apr 09, 2025 am 12:07 AM

JavaScript ist der Eckpfeiler der modernen Webentwicklung. Zu den Hauptfunktionen gehören eine ereignisorientierte Programmierung, die Erzeugung der dynamischen Inhalte und die asynchrone Programmierung. 1) Ereignisgesteuerte Programmierung ermöglicht es Webseiten, sich dynamisch entsprechend den Benutzeroperationen zu ändern. 2) Die dynamische Inhaltsgenerierung ermöglicht die Anpassung der Seiteninhalte gemäß den Bedingungen. 3) Asynchrone Programmierung stellt sicher, dass die Benutzeroberfläche nicht blockiert ist. JavaScript wird häufig in der Webinteraktion, der einseitigen Anwendung und der serverseitigen Entwicklung verwendet, wodurch die Flexibilität der Benutzererfahrung und die plattformübergreifende Entwicklung erheblich verbessert wird.

Wie fusioniere ich Arrayelemente mit derselben ID mit JavaScript in ein Objekt? Wie fusioniere ich Arrayelemente mit derselben ID mit JavaScript in ein Objekt? Apr 04, 2025 pm 05:09 PM

Wie fusioniere ich Array -Elemente mit derselben ID in ein Objekt in JavaScript? Bei der Verarbeitung von Daten begegnen wir häufig die Notwendigkeit, dieselbe ID zu haben ...

Der Unterschied in der Konsole.log -Ausgabeergebnis: Warum unterscheiden sich die beiden Anrufe? Der Unterschied in der Konsole.log -Ausgabeergebnis: Warum unterscheiden sich die beiden Anrufe? Apr 04, 2025 pm 05:12 PM

Eingehende Diskussion der Ursachen des Unterschieds in der Konsole.log-Ausgabe. In diesem Artikel wird die Unterschiede in den Ausgabeergebnissen der Konsolenfunktion in einem Code analysiert und die Gründe dafür erläutert. � ...

Wie kann man Parallax -Scrolling- und Element -Animationseffekte wie die offizielle Website von Shiseido erzielen?
oder:
Wie können wir den Animationseffekt erzielen, der von der Seite mit der Seite mit der offiziellen Website von Shiseido begleitet wird? Wie kann man Parallax -Scrolling- und Element -Animationseffekte wie die offizielle Website von Shiseido erzielen? oder: Wie können wir den Animationseffekt erzielen, der von der Seite mit der Seite mit der offiziellen Website von Shiseido begleitet wird? Apr 04, 2025 pm 05:36 PM

Diskussion über die Realisierung von Parallaxe -Scrolling- und Elementanimationseffekten in diesem Artikel wird untersuchen, wie die offizielle Website der Shiseeido -Website (https://www.shiseeido.co.jp/sb/wonderland/) ähnlich ist ...

Ist JavaScript schwer zu lernen? Ist JavaScript schwer zu lernen? Apr 03, 2025 am 12:20 AM

JavaScript zu lernen ist nicht schwierig, aber es ist schwierig. 1) Verstehen Sie grundlegende Konzepte wie Variablen, Datentypen, Funktionen usw. 2) Beherrschen Sie die asynchrone Programmierung und implementieren Sie sie durch Ereignisschleifen. 3) Verwenden Sie DOM -Operationen und versprechen Sie, asynchrone Anfragen zu bearbeiten. 4) Vermeiden Sie häufige Fehler und verwenden Sie Debugging -Techniken. 5) Die Leistung optimieren und Best Practices befolgen.

So implementieren Sie die Funktion des Ziell- und Drop-Einstellungsfunktion, ähnlich wie bei VSCODE in der Front-End-Entwicklung? So implementieren Sie die Funktion des Ziell- und Drop-Einstellungsfunktion, ähnlich wie bei VSCODE in der Front-End-Entwicklung? Apr 04, 2025 pm 02:06 PM

Erforschen Sie die Implementierung der Funktion des Bedien- und Drop-Einstellungsfunktion der Panel ähnlich wie VSCODE im Front-End. In der Front-End-Entwicklung wird VSCODE ähnlich wie VSCODE implementiert ...

See all articles