Heim  >  Artikel  >  Web-Frontend  >  JavaScript – Ein detaillierter Blick auf Bereiche, Bereichsketten und Vorbereitung

JavaScript – Ein detaillierter Blick auf Bereiche, Bereichsketten und Vorbereitung

php是最好的语言
php是最好的语言Original
2018-08-03 09:33:351625Durchsuche

Variablen umfassen: globale Variablen, lokale Variablen

In JavaScript sind in Funktionen definierte Variablen lokale Variablen

Geltungsbereich: Es ist der Anwendungsbereich von Variablen

, der unterteilt ist in: lokalen Bereich und globalen Bereich

In js gibt es keinen Bereich auf Blockebene --- Eine in Klammern definierte Variable. Diese Variable kann außerhalb der geschweiften Klammern verwendet werden.

Gültigkeitsbereichskette: Verwenden Sie Variablen, suchen Sie von innen nach außen und suchen Sie Ebene für Ebene Suchen Sie danach. Verwenden Sie direkt die schichtweise Suche

var num=10; //作用域链 级别:0
   var num2=20;
   var str = "abc"
   function f1() {
     var num2=20;
     function f2() {
       var num3=30;
       console.log(num);
     }
     f2();
   }
   f1();

. Wenn die Variable immer noch nicht gefunden wird, ist das Ergebnis ein Fehler

Vorabanalyse: Es wird im Browser analysiert. Vor dem Code wird die Deklaration von Variablen und Funktionen an die Spitze des Bereichs verschoben (heraufgestuft)

(1) Heraufstufung von Variablen

Im folgenden Fall wird die Variablendeklaration erweitert, aber der Wert von num wird nicht erweitert. Das Ergebnis ist undefiniert

//变量的提升
    console.log(num);
    var num=100;


//提升之后为:
var num;//变量的声明提前
console.log(num);
    var num=100;

(2) Das

Funktionsdeklaration ist fortgeschritten und der Code kann weiterhin ausgeführt werden

//函数的声明被提前了
    f1();
    function f1() {
      console.log("这个函数,执行了");
    }

Aber in der folgenden Situation meldet der Code einen Fehler

f2();
    var f2=function () {
        console.log("小杨好帅哦");
    }

//声明提前后:
var f2;//为一个变量,undefind
f2();//undefind加括号是不被认可的,所以报错
    var f2=function () { 
        console.log("小杨好帅哦");
    }

Wenn Sie keinen Fehler melden möchten, Der Code kann geändert werden in:

var f2;
    f2=function () {
      console.log("小杨好帅哦");
    };
    f2();

Verwandte Artikel:

Lassen Sie uns über den JavaScript-Bereich und die Bereichskette sprechen

Eingehende Analyse des JavaScript-Bereichs und der Bereichskette

Ähnliche Videos:

Spielen Sie mit dreistufigen Verknüpfungsbeispielen von JavaScript

Das obige ist der detaillierte Inhalt vonJavaScript – Ein detaillierter Blick auf Bereiche, Bereichsketten und Vorbereitung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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