Heim > Artikel > Web-Frontend > Welche 4 Möglichkeiten gibt es, Variablen in Javascript zu deklarieren?
4 Möglichkeiten, Variablen in JavaScript zu deklarieren: 1. Verwenden Sie „var“, um Variablen zu deklarieren, z. B. „var a;“ 2. Verwenden Sie „function“, um Variablen zu deklarieren, z. B. „function Fun (num) {}“; 3. Verwenden Sie „let“, um Variablen zu deklarieren. 4. Verwenden Sie „const“, um Variablen zu deklarieren.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, ECMAScript Version 6, Dell G3-Computer.
Es gibt mehrere Möglichkeiten, Variablen in JavaScript zu deklarieren:
Lassen Sie es uns überprüfen
Überprüfungsmethode eins:
function repeatFun (num) { return num; } repeatFun(10); // 10 var repeatFun = 1; repeatFun(2); // Uncaught TypeError: repeatFun is not a function
Diese Methode besteht darin, Variablen wiederholt zu deklarieren, aber letztere überschreibt die ersteren.
Sehen wir uns an, was hier passiert:
{ let repeatFun = 1; function repeatFun (num) { return num } } // Uncaught SyntaxError: Identifier 'repeatFun' has already been declared
Var ist durch Funktionen begrenzt.
var b = a + 1; // b: NaN var a = 1; // a: 1
Beispiel 2: Überprüfen Sie, ob in let eine Variablenheraufstufung vorliegt:
var b; var a; b = a +1; // b: NaN a = 1; // a: 1
let b = a + 1; // Uncaught ReferenceError: a is not defined let a = 1;
let a = 1; // a: 1 let b = a + 1; // b: 2Wert ist a + 1
var a = 1; var a = 2; var b = a + 1; // 3
let a = 1; let a = 2; // Uncaught SyntaxError: Identifier 'a' has already been declared
vars Geltungsbereich ist durch Funktionen begrenzt
let und const sind Blockbereiche
var a = 1; let a = 2; //Uncaught SyntaxError: Identifier 'a' has already been declaredconst verhält sich genauso wie let in der Umfang des Bereichs Beispiel 2, überprüft den Umfang von const:
var num = 5; function factorial(num) { var result = 1,resultValue = 0; for (let i = num - 1; i >= 1; i--) { if (i === num - 1) { resultValue = num * i; }else{ resultValue = num * i / num; } result *= resultValue; } // i 是用 let 进行定义它的作用域仅仅被限制在 for 循环的区域内 // i++;// Uncaught ReferenceError: i is not defined return result; } // result 是用 var 进行定义,他的活动区域在 factorial 函数内 // result++; // var的作用域.html:34 Uncaught ReferenceError: result is not defined factorial(num); // 120Beispiel 3, überprüft, ob var globale Variablen definieren kann, let und const können nur lokale Variablen definieren
{ const NUM_1 = 10; } let b = NUM_1 + 1; // Uncaught ReferenceError: NUM_1 is not defined
若这样改一下就可以得到我们想要的值:
这个同时也涉及到新问题 this 的指向。后面的文章再详细举例验证
const 与 let , var 其实还是有些地方不一样的
例子1:验证 const 的特殊之处(一)<br>
const NUM = 100; NUM = 1000; // Uncaught TypeError: Assignment to constant variable
但是也有例外
例子二:验证 const 的特殊之处(二)
const obj = { name: 'xiaoMing', sayName () { return this.name } }; obj.sayName(); // xiaoMing obj.name = 'xiaoHong'; obj.sayName(); // xiaoHong
若这样改一下: <br> 例子三:验证 const 的特殊之处(三)
const obj = { name:'xiaoMing', sayName(){ return this.name } }; obj = {}; // Uncaught TypeError: Assignment to constant variable
更多编程相关知识,请访问:编程视频!!
Das obige ist der detaillierte Inhalt vonWelche 4 Möglichkeiten gibt es, Variablen in Javascript zu deklarieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!