推广 热搜:     参数  行业  机械  教师  设备  系统  公司  企业 

【js知识】const定义变量时的{} & 【ES6】中var、let、const的区别

   日期:2024-11-24     浏览:79    移动:http://sicmodule.glev.cn/mobile/quote/9569.html

一、const定义变量时的{}

1、解构

从数组和对象中提取值,对变量进行赋值

【js知识】const定义变量时的{} & 【ES6】中var、let、const的区别

解构的语法

 
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 用来定义常量,使用时必须初始化(即必须赋值,只能在块作用域里访问,而且不能修改;如果声明的是复合类型数据,可以修改其属性


    本文地址:http://sicmodule.glev.cn/quote/9569.html  
     歌乐夫 http://sicmodule.glev.cn/ , 查看更多


特别提示:本信息由相关企业自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。


相关行业动态
推荐行业动态
点击排行
网站首页  |  关于我们  |  联系方式  |  使用协议  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2023001713号