ES6学习笔记

  1. var、let和const 有什么区别 ?
    var 作用域为该语句所在的函数内,存在变量提升。
    let 块级作用域,该语句所在的代码块内,不存在变量提升,暂时性死区,相同作用域不允许重复声明。
    const 使用声明的常量(栈内存在的值和地址),值类型的不可以改,引用类型的可变,引用不可变要用Object.freeze()
    【基本类型】 Boolen, Number, String 是把直接值直接存在栈内。
    【引用类型】 Object(Function, Array ….)是把值存在对应的堆地址。
    【变量提升】函数声明和变量声明总是会被解释器悄悄地被”提升”到方法体的最顶部。JavaScript 中,函数及变量的声明都将被提升到函数的最顶部。
    JavaScript 中,变量可以在使用后声明,也就是变量可以先使用再声明。

  2. ES6声明的方式?
    es5: var function
    es6: var function let const import class

  3. es5 普通函数和箭头函数的区别
    普通函数:this指向调用它的那个对象,会自动绑定上各种变量。
    => 没有自动绑定this arguments上的各种局部变量,箭头函数中调用 this 时,仅仅沿着作用域链向上寻找,找到最近的一个 this 。箭头函数作为匿名函数,不能用new,箭头函数没有原型属性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值