zoukankan      html  css  js  c++  java
  • let和const的区别以及let和var的区别

    在es6中新增了块级作用域。块级作用域由{}包括,if语句和for语句里面的{}也属于块作用域

    let和const都是es6新增的声明方式

    let和const的区别

    let用于声明变量,比如

    let num=1;

    num=2;(这时num的值就变成了2)

    而const用来声明常量,并且声明之后就不能改变

    比如 cosnt pi=3.14;

    补充:

    const obj={a:3};

    obj.a=4;

    我们用const会更好一点,因为const实际上保证的不是变量的值不能改变,而是变量的指向的内存地址不得改变。对于简单的数据(数字,字符串,布尔值),值是保存在变量指向的那个内存地址中,因此也等同于常量。

    但是如果遇到以下情况只能用let

    let obj={a:3};

    obj={a:4}

    let和var的区别

    1.let具有块级作用域,let内声明的变量只在块级作用域内有效。var声明的变量是全局的,

    2.var存在变量提升,前置声明输出的是undefined,而let前置声明会报错,我们称之为暂时性死区,

    3.let不能重复声明同一个变量而var可以,

    4.var声明的变量会挂载到window上,而let声明的变量不会。

  • 相关阅读:
    桶排序
    向控件添加变量之后,类中多了什么?
    atan2&sin
    Bug(1)
    十六进制转化二进制[c]
    接口性能分析与优化
    记一次内存泄漏DUMP分析
    偏移二分查找
    iOS开发——自定义密码输入键盘
    iOS开发——手机号,密码,邮箱,身份证号,中文判断
  • 原文地址:https://www.cnblogs.com/lmm1010/p/12974522.html
Copyright © 2011-2022 走看看