Heim >Web-Frontend >Front-End-Fragen und Antworten >Was sind die Unterschiede zwischen let und const in es6?

Was sind die Unterschiede zwischen let und const in es6?

青灯夜游
青灯夜游Original
2022-04-19 16:28:565108Durchsuche

Unterschied: 1. Let deklariert Variablen, deren Werte und Typen geändert werden können, während const Konstanten deklariert, die nicht geändert oder neu zugewiesen werden können. 2. Let-Variablen müssen nach der Deklaration nicht initialisiert werden, während const Konstanten sind deklariert, muss es sofort initialisiert werden. 3. const zeigt immer auf eine feste Adresse, während let nicht festgelegt ist.

Was sind die Unterschiede zwischen let und const in es6?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, ECMAScript Version 6, Dell G3-Computer.

let und const sind zwei neue Schlüsselwörter, die in es6 zum Deklarieren von Variablen eingeführt wurden. Obwohl wir weiterhin die weithin bekannte Variable var verwenden können, stehen uns jetzt zwei leistungsfähigere Tools zur Verfügung: let und const.

Der Unterschied zwischen let und const in es6

① Let deklariert eine Variable, und ihr Wert und Typ kann geändert werden; const deklariert eine Konstante, und weder ihr Wert noch ihr Typ können geändert werden.

② Let-Variablen müssen nach der Deklaration nicht initialisiert werden, während konstante Konstanten nach der Deklaration sofort initialisiert werden müssen und später keinen Wert zugewiesen werden können.

const i ; // 报错,一旦声明,就必须立即初始化
const j = 5;
j = 10; // 报错,常量不可以改变

③ const zeigt immer auf eine feste Adresse, während let nicht festgelegt ist

const foo = {};
 
// 为 foo 添加一个属性,可以成功
foo.prop = 123;
foo.prop // 123
 
// 将 foo 指向另一个对象,就会报错
foo = {}; // TypeError: "foo" is read-only

Im obigen Code speichert die Konstante foo eine Adresse, und diese Adresse zeigt auf ein Objekt. Das Einzige, was unveränderlich ist, ist diese Adresse, das heißt, Sie können foo nicht auf eine andere Adresse verweisen, aber das Objekt selbst ist veränderbar, sodass Sie ihm immer noch neue Eigenschaften hinzufügen können.

Hinweis:

Bei Variablen vom zusammengesetzten Typ wie Arrays und Objekten verweist der Variablenname nicht auf die Daten, sondern auf die Adresse, an der sich die Daten befinden. const garantiert nur, dass die Adresse, auf die der Variablenname zeigt, unverändert bleibt, garantiert jedoch nicht, dass die Daten an dieser Adresse unverändert bleiben. Sie müssen daher sehr vorsichtig sein, wenn Sie eine Variable vom zusammengesetzten Typ als Konstante deklarieren.

const arr = [];
// 报错,[1,2,3]与[]不是同一个地址
arr = [1,2,3];
const arr = [];
// 不报错,变量名arr指向的地址不变,只是数据改变
arr[0] = 1;
arr[1] = 2;
arr[2] = 3;
console.log(arr.length); // 输出:3

Die Ähnlichkeiten zwischen let und const in es6:

① Nur gültig innerhalb des Blockebenenbereichs, in dem sich die Deklaration befindet.

② Es gibt keine Deklarationsförderung und es gibt eine vorübergehende Totzone, die erst nach der deklarierten Position genutzt werden kann.

<script type="text/javascript">
console.log(dadi);
let dadi = 569;
</script>

Ergebnis: Es wird ein Fehler gemeldet

Was sind die Unterschiede zwischen let und const in es6?

③ Kann nicht wiederholt werden.

【Verwandte Empfehlungen: Javascript-Video-Tutorial, Web-Frontend

Das obige ist der detaillierte Inhalt vonWas sind die Unterschiede zwischen let und const in es6?. 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
Vorheriger Artikel:Was bedeutet Token im Knoten?Nächster Artikel:Was bedeutet Token im Knoten?