javasript中var、let和const区别

前端攻城老湿 · · 16 次点击 · · 开始浏览    

let和const都是es5,es6新版本的js语言规范出来的定义,在这以前定义一个变量只能用var。let和const都是为了弥补var的一些缺陷而新设计出来的。

简单来说是: let是修复了var的作用域的一些bug,变的更加好用。let是更好的var。

区别:

var的作用于是函数作用域,其作用域为该语句所在的函数内,而let是块级别(作用域仅在大括号括起来的里面);
使用var声明的变量,其作用域为该语句所在的函数内,且存在变量提升现象,注意变量提升,只是将声明提升,赋值并不会提升;

使用let声明的变量,其作用域为该语句所在的代码块内,不存在变量提升,也就是let声明的变量,在声明前无法使用, 会报出ReferenceError错误;
使用const声明的是常量,在后面出现的代码中不能再修改该常量的值。用const声明变量后必须要赋值,否则抛出语法错误。

本文来自:Segmentfault

感谢作者:前端攻城老湿

查看原文:javasript中var、let和const区别

16 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet