Artikel ini membawakan anda pengetahuan yang berkaitan tentang JavaScript terutamanya memperkenalkan kepada anda perbezaan antara var, let dan const, serta hubungan antara ECMAScript dan JavaScript, saya harap ia membantu semua orang .
首先,ECMAScript 和 JavaScript 什么关系?
Apakah perbezaan antara var, let dan const?
1 Pembolehubah pengisytiharan var wujud 变量提升
, let dan const tidak mempunyai promosi berubah
console.log(a); // undefined ===> a已声明还没赋值,默认得到undefined值 console.log(b); // 报错:b is not defined ===> 找不到b这个变量 console.log(c); // 报错:c is not defined ===> 找不到c这个变量 var a = 100; let b = 10; const c = 10; console.log(a);//a=100
2. let dan const hanya boleh diakses dalam skop blok
if(1){ var a = 100; let b = 10; const c = 1; } console.log(a); // 100 console.log(b) // 报错:b is not defined ===> 找不到b这个变量 console.log(c) // 报错:c is not defined ===> 找不到c这个变量
3 Let dan const tidak boleh mengisytiharkan pembolehubah dengan nama yang sama dalam skop yang sama, tetapi var boleh
var a = 100; console.log(a); //控制台输出 100 var a = 10; console.log(a); //控制台输出 10 let a = 100; let a = 10; // 控制台报错:Identifier 'a' has already been declared ===> 标识符a已经被声明了。
4. const mentakrifkan pemalar dan tidak boleh diubah suai, 但是在定义的对象时对象属性值可以改变
const a=2 a=3 console.log(a) //控制台报错
const person = { name : 'make', sex : '男' } person.name = 'test' console.log(person.name) //运行发现控制台没有报错,且 person.name 被成功修改
????这是怎么回事呢?
kerana objek ialah jenis rujukan, apa yang disimpan secara peribadi hanyalah penunjuk objek, dan mengubah suai sifat objek dengan tidak akan mengubah penunjuk objek , jadi dalam kes ini pengubahsuaian akan berjaya. Dalam erti kata lain, jenis rujukan yang ditakrifkan oleh const dibenarkan selagi penunjuk tidak berubah.
Seterusnya kami cuba mengubah suai penunjuk, biarkan orang menunjuk ke objek baharu dan akhirnya ralat dilaporkan
const person = { name : 'make', sex : '男'}person = { name : 'test', sex : '男'}console.log(person.name) //控制台报错
var-defined pembolehubah, promosi pembolehubah, tiada konsep daripada blok,Boleh diakses merentas blok.
let mentakrifkan pembolehubah , hanya boleh mengakses dalam skop blok dan tidak boleh mengisytiharkan pembolehubah dengan nama yang sama.
const digunakan untuk mentakrifkan pemalar Apabila digunakan, mesti memulakan (iaitu, ia mesti diberikan nilai dengan nama yang sama tidak boleh diisytiharkan. hanya boleh diakses dalam skop blok dan tidak boleh mengubah suai , tetapi nilai sifat objek boleh ditukar apabila objek ditentukan.
Tiada satu pun daripada mereka boleh diakses merentas fungsi
Pembelajaran yang disyorkan: "Tutorial Video JavaScript"
Atas ialah kandungan terperinci Mari kita bincangkan tentang perbezaan antara var, let dan const (contoh kod). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!