let和const   使用方法:

  (1).有没有感觉到在     javascript  使用var会发生变量提升,即脚本开始运行时,

变量已经存在了,但是没有值,所以会输出undefined。

  而let不会发生变量提升,这表示在声明它之前,变量是不存在的,这时如果用到它,

就会抛出一个错误。

  (2). var 是函数级作用域,let是块级作用域

例子:

  {

    let n = 10;

    var m = 1;

  }

  结果:n //      会报错:ReferenceError:a is  not defined.

  结果:m // 1

  (2).let不允许在相同作用域内,重复声明同一个变量:

例子:

   function(){

    let n = 10;

    var n = 1;

  }

  //报错

  function(){

    let n = 10;

    let n = 1;

  }

  //报错

  (3).const声明一个只读的常量,且声明后,常量的值是不能改变的

  const PI = 3.1415;

  PI = 3;

  //报出异常:TypeError: Assignment to constant variable

  (4).const命令声明的常量也是不提升,只能在声明的位置后面使用。

例子:

  {

    const a = 10;

  }

  console.log(a);

     //报错

  (5).constlet  一样不可重复声明

  (6).复合类型的变量,变量名不指向数据,它是指向数据所在的地址,

    const只保证变量名指向的地址是不变的,并不能保证它地址的数据是不变的,

    所以将一个对象声明为常量必须非常小心.

  const n = {};

  n.prop = aaa;

  console.log(n.prop);    // aaa

  n = {}; // 报错

from: https://www.cnblogs.com/place-J-P/p/7471182.html

在vue中let var 和const 区别相关推荐

  1. vue方法调用失败后多次调用_浅析Vue中 computed / watch / methods的区别

    思考:请说下Vue中computed 和 watch 的区别( 面试题 ) 构造选项 computed / watch / methods computed ● computed 起初构想 在Vue的 ...

  2. Vue中的var that=this;是啥意思?为什么要这样写?

    Vue中的var that=this:是啥意思?为什么要这样写? 初学vue,记录一个思考内容. 文章目录 Vue中的var that=this:是啥意思?为什么要这样写? var that=this ...

  3. “约见”面试官系列之常见面试题之第七十一篇之let和var和const区别(建议收藏)

    **!**let /var定义变量 1,let 不具有变量提升,具有块级作用域,不允许重复定义 let定义的变量是块级的变量.使用 let 声明的变量,在声明前无法使用,否则将会导致错误:如果未在 l ...

  4. ES6学习(var,let,const区别)

    本人写这个专题的博客是为了总结一下自己学习,使用还有刷题时学到的ES6知识点,并做以归纳. var,let,const 三个属性都可以声明变量. 作用域 var  重新赋值,重新定义变量,可以重复声明 ...

  5. vue中params和query的区别,以及具体用法

    query传递参数会在url后面用?连接起来,且参数之间用&&符号连接然后显示在页面的url中:params传递参数不会显示在页面中:query有点像ajax中的get请求,而para ...

  6. Vue 中 computed vs methods的区别

    computed:计算属性 methods:方法 watch:侦听器 computed与methodes区别 1.computed是响应式的,methods并非响应式. 2.调用方式不一样,compu ...

  7. vue中runtimecompiler和runtimeonly的区别

    简单总结 如果在之后的开发中,你依然使用template,就需要选择runtimecompiler 如果你之后的开发中,使用的是.vue文件夹开发,那么可以选择runtimeonly runtimec ...

  8. vue中的target与currentTarget区别

    <template><transition name="slide"><div class="top_box" @click=&q ...

  9. vue中computed和watched的区别

    computed computed在vue中起到计算属性作用. <p>firstName: <input type="text" v-model="fi ...

最新文章

  1. python策略模式_设计模式(python实现):策略模式
  2. 如何写windows系统已保护的内存区域
  3. CodeForces - 1538G Gift Set(二分)
  4. python matplotlib画折线图出现连线混乱_python使用matplotlib模块绘制多条折线图、散点图...
  5. .NET Core 3.0愈加成熟,微软将不再把.NET Framework API移植给它
  6. logback实践笔记
  7. CentOS上使用netstat命令查证DDOS***
  8. 特斯拉已撤回德国电池工厂建厂补贴申请 原有望获得近13亿美元
  9. Java或Web中解决所有路径问题
  10. python操作腾讯文档_python查看文档
  11. 用麦咖啡(mcafee)打造自己的安全服务器
  12. 渗透测试报告模板_网站安全测试报告模板该如何写
  13. Struts 官方下载地址
  14. ssr pac_全新回馈丨购金币三日礼,获取主线SSR羁绊
  15. Laragon实现快速创建ThinkPHP项目
  16. 移动端和前端开发的共性
  17. 编写js,使用对象字面量的形式创建一个名字为可可的狗的对象,具体信息如下:
  18. 用devc++表白_【建大表白墙】19级倪yl,风吹起如花般破碎的流年,而你的笑容摇晃摇晃,成为我命途中最美的点缀...
  19. Error: Unknown command: cask
  20. 电脑通过豌豆荚连接手机或者平板不成功,豌豆荚版本6.8.*

热门文章

  1. vue项目部署到nginx
  2. The Wide and Deep Learning Model(译文+Tensorlfow源码解析) 原创 2017年11月03日 22:14:47 标签: 深度学习 / 谷歌 / tensorf
  3. 人脸识别技术大总结—Face Detection Alignment
  4. MyBatis源码-解读Executor的三个实现类之BatchExecutor(批处理执行器)
  5. 实战SSM_O2O商铺_21【商铺列表】Dao层开发
  6. 我为什么重新开始学习数学?
  7. 饿了吗app都是用html写的,Vue2.0仿饿了么webapp单页面应用详细步骤
  8. QPropertyAnimation实现游戏地图场景变换
  9. Redis五种数据结构详解
  10. 计算机视觉——利用openCV与Socket结合进行远程摄像头实时视频传输并保存图片数据