Maison > interface Web > js tutoriel > le corps du texte

Parlons des différences entre var, let et const (exemple de code)

藏色散人
Libérer: 2023-01-06 16:25:33
avant
2126 Les gens l'ont consulté

Cet article vous apporte des connaissances pertinentes sur JavaScript. Il vous présente principalement les différences entre var, let et const, ainsi que la relation entre ECMAScript et JavaScript. Les amis intéressés devraient y jeter un œil.

Parlons des différences entre var, let et const (exemple de code)

Qu'est-ce que JavaScript ?

Tout d'abord, quelle est la relation entre ECMAScript et JavaScript ? 首先,ECMAScript 和 JavaScript 什么关系?

  • ECMAScript是一个国际通过的标准化脚本语言。
  • JavaScript由ECMAScript和DOM、BOM三者组成。 可以简单理解为:ECMAScript是JavaScript的语言规范,JavaScript是ECMAScript的实现和扩展。

var、let、const的区别?

1. var声明变量存在变量提升,let和const不存在变量提升

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
Copier après la connexion

2. let和const只能在块作用域里访问

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这个变量
Copier après la connexion

3. 同一作用域下let和const不能声明同名变量,而var可以

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已经被声明了。
Copier après la connexion

4. const定义常量,而且不能修改,但是在定义的对象时对象属性值可以改变

 const a=2
 a=3
 console.log(a)  //控制台报错
Copier après la connexion
const person = {
    name : 'make',
    sex : '男'
}

person.name = 'test'

console.log(person.name)    //运行发现控制台没有报错,且 person.name 被成功修改
Copier après la connexion

????这是怎么回事呢?

Étiquettes associées:
source:csdn.net
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!