网络组建与维护实训报告,百度seo网站,专业网站建设方案,推广普通话顺口溜一、基本用法
- 语法#xff1a;const 标识符初始值;注意:const一旦声明变量#xff0c;就必须立即初始化#xff0c;不能留到以后赋值
- 规则#xff1a;1.const 声明一个只读的常量#xff0c;一旦声明#xff0c;常量的值就不能改变2.const 其实保证的不是变量的值不…一、基本用法
- 语法const 标识符初始值;注意:const一旦声明变量就必须立即初始化不能留到以后赋值
- 规则1.const 声明一个只读的常量一旦声明常量的值就不能改变2.const 其实保证的不是变量的值不变而是保证变量指向的内存地址所保存的数据不允许改动重点 不可变值相当于常量简单类型的数据数值、字符串、布尔值数据结构可变 复合类型的数据主要是对象和数组二、本质
- const实际上保证的并不是变量的值不得改动而是变量指向的那个内存地址所保存的数据不得改动。1.对于简单类型的数据数值、字符串、布尔值值就保存在变量指向的那个内存地址因此等同于常量。2.对于复合类型的数据主要是对象和数组变量指向的内存地址保存的只是一个指向实际数据的指针const只能保证这个指针是固定的即总是指向另一个固定的地址至于它指向的数据结构可变化。三、示例
1数组
const arr[]
console.log(arr) // []
arr.push(wyt)
console.log(arr) //[wyt]2对象
//添加name属性const obj {}obj.name wytconsole.log(obj);冻结对象 const foo Object.freeze({});
// 常规模式时下面一行不起作用
// 严格模式时该行会报错
foo.prop 123;四、规则
- 同let一样若忘记可以看ES6-let那篇文章- 同一个作用域内不允许重复声明- 不存在变量提升即必须先声明再使用但是const必须赋初始值- 暂时性死区