ES6—let变量声明及声明特性

ES6—let变量声明及声明特性

let 用来声明变量 作用和 var 一样
但是声明变量具有一些特性
let 声明格式

        let a;
        let b,c,d;
        let e=100;
        let f=111,g=222,h=[];

let 具有的特性:

1.变量不能重复声明 但是 var 可以重复
作用就是防止变量污染

        let star='张涵';
        let star='小阿涵';

在这里插入图片描述

2.块级作用域 在ES5中 有三种作用域 全局 函数 eval(在ES5的严格模式中才会拥有)
ES6中let声明的变量就是块级作用域
块级作用域就是指 变量只在代码块里面有效 代码块外无效
块级作用域并不是单纯的写花括号 同样包括if else while for的花括号 如果用 let 声明的话也是块级作用域

        {
            let boy='小张';
        }
        console.log(boy);

在这里插入图片描述

var 没有块级作用域 会自动往全局的window属性去添加这个属性

        {
            var boy='小张';
        }
        console.log(boy);

在这里插入图片描述

3.不存在变量提升 代码在执行前 会先去收集变量 用 var 函数function() var声明变量 函数提前声明
对于var声明的变量还赋予一个初始值undefined

        console.log(song);
        var song='花海';

在这里插入图片描述

如果使用let则不会

        console.log(song);
        let song='花海';

在这里插入图片描述

4.不影响作用域链

        {
            let school='清华';
            function fn(){
                console.log(school);
            }
            fn();
        }

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值