es6中的变量声明与赋值

一、let

用法:声明一个变量

特点:

        (1)不定义不能使用

        (2)在同一作用域不可以重复声明同一个变量

        (3)默认不会绑定在window身上

        (4)拥有块级作用域

        (5)预解析不会变成undefined

二、const

用法:声明一个只读的变量(也就是常量)

特点:

        (1)不定义不能使用

        (2)在同一作用域不可以重复声明同一个变量

        (3)默认不会绑定在window身上

        (4)拥有块级作用域

        (5)预解析不会变成undefined

        (6)声明变量的同时必须定义初始值

        (7)声明的是简单的数据类型的情况下不可以更改值

三、symbol

介绍:对象的属性名容易产生命名冲突,为保证键名的唯一性,故es6引出symbol这种新的原始数据类型确保创建的每个变量都是独一无二的

特点:symbol类型的数据是类似字符串的数据类型,由于symbol函数返回的值是原始类型的数据,不是对象,故symbol函数前不能使用new命令。

用法:定义对象的唯一属性名

(1)第一种方法

        let name=Symbol()

        let a={}

        a[name]='Nick'

(2)第二种方法

        let a={

                        [name]:'Nick',

                }

(3)第三种方法

        let a={}

        Object.defineProperty(a,name,{value:'Nick'})

定义常量:const name=Symbol("Nick");

四、解构赋值(深入原理讲解赋值及其法)

介绍:解构赋值可以理解为赋值操作的语法糖,它是针对数组或者对象进行模式匹配,然后对其中的变量进行赋值。代码书写上言简意赅,语义明确,也方便了对象数据的读取操作。

实质:ES6中只要某种数据有可以循环迭代,都可以进行数组的解构赋值。

对数组进行解构:

(1)按照位置进行解构

(2)定义变量如果有哪个值不想取,可以跳过用 , 使用空格

(3)定义变量可以使用默认值

 (4)可以使用剩余值 ...拓展运算符 必须放在最后一位

 (5)可以嵌套

对对象进行解构:

(1)按照属性名进行解构

(2)可以取其他的名字(a:newA)

(3)定义变量可以使用默认值

 (4)可以使用剩余值 ...拓展运算符 必须放在最后一位

 (5)可以嵌套

  • 8
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值