一、const定义变量时的{}
1、解构
从数组和对象中提取值,对变量进行赋值
解构的语法:
2、{} 所代表的的意思
1
2-es6语法糖
3、解构赋值的基本规则是:
只要等号右边不是对象或数组,就先将其转换为对象。由于undefined和null无法转换为对象,所以对它们解构赋值都会报错。
二、【ES6】中var、let、const的区别
1、块级作用域{}
ES5 中作用域有:全局作用域、函数作用域。 ES6 中新增了块级作用域 块级作用域由{ }包括。if语句和for语句里面的{ }也属于块级作用域
通过var定义的变量可以跨块作用域访问到
通过var 定义的变量不能跨函数作用域访问到
if语句和for语句中用var 定义的变量可以在外面访问到
if语句和for语句属于块级作用域,不属于函数作用域
2、var、let、const的区别
1.var
作用: 声明变量 特点:
- 函数作用域
- 可以变量提升(预解析)
- 值可以更改
2.let
特点:
- let声明的变量只在所处于的块级有效 好处 : 可以防止循环变量变成全局变量 : (使用var就不会报错)
- 不存在变量提升,不能重复声明
- 暂时性死区 利用let声明的变量会绑定在这个块级作用域,不会受外界的影响
3.const
作用: 声明常量,常量就是值(内存地址)不能变化的量 常量:常态的量,值是常态的量,值无法改变
特点:
- 具有块级作用域
- 声明常量时必须赋值
- 常量赋值后,值不能修改,如果声明的是复合类型数据,可以修改其属性
const 用来定义常量,使用时必须初始化(即必须赋值),只能在块作用域里访问,而且不能修改;如果声明的是复合类型数据,可以修改其属性
注意: var 定义的变量,没有块的概念,可以跨块访问,不能跨函数访问
let 定义的变量,只能在块作用域里访问,不能跨块访问,也不能跨函数访问
var声明变量存在变量提升,let和const不存在变量提升,所以用 let 定义的变量一定要在声明后再使用,否则会报错
var 变量可以多次声明,而 let 不允许在相同作用域内,重复声明同一个变量
const 用来定义常量,使用时必须初始化(即必须赋值),只能在块作用域里访问,而且不能修改;如果声明的是复合类型数据,可以修改其属性
以上就是本篇文章【【js知识】const定义变量时的{} & 【ES6】中var、let、const的区别】的全部内容了,欢迎阅览 ! 文章地址:http://sicmodule.glev.cn/quote/9569.html 行业 资讯 企业新闻 行情 企业黄页 同类资讯 网站地图 返回首页 歌乐夫资讯移动站 http://sicmodule.glev.cn/mobile/ , 查看更多