js中let 、 var 、 const的区别

来源:互联网 发布:哈尔滨卖plc编程软件 编辑:程序博客网 时间:2024/04/28 02:15

在JavaScript 1.7中, let 关键词被添加进来, 我听说它声明之后类似于”本地变量“, 但是我仍然不确定它和 关键词 var 的具体区别。
回答:
不同点在于作用域,var关键字的作用域是最近函数的作用域(在函数体外部就是块作用域),let关键词的作用域是最接近的块作用域(在任何块以外的是全局作用域),这将比函数作用域小。
下面是Demo 例子。
全局(Global)

let me = 'go'; //globally scoped  var i = 'able'; //globally scoped  

函数(Function)
当瞎下面这种, 也是平等的。

function ingWithinEstablishedParameters() {      let terOfRecommendation = 'awesome worker!'; //function block scoped      var sityCheerleading = 'go!'; //function block scoped  };  `这里写代码片`

块(Block)
这是不同点, let只是在for循环中,var 确实在整个函数都是可见的

function allyIlliterate() {      //tuce is *not* visible out here      for( let tuce = 0; tuce < 5; tuce++ ) {          //tuce is only visible in here (and in the for() parentheses)      };      //tuce is *not* visible out here  };  function byE40() {      //nish *is* visible out here      for( var nish = 0; nish < 5; nish++ ) {          //nish is visible to the whole function      };      //nish *is* visible out here  };  

对于const,是常量,意味着const标识符不能被随便赋值
如果我不需要重新赋值,const 就是我的默认选择 相比 let 要常用的多,因为我想让它在代码中的使用尽可能的清晰。var 现在是最坏的选择当你在 JavaScript 中定义一个变量时。 它在定义后可能还会修改,可能会在全局函数中使用,或者说只为块或循环。

0 0
原创粉丝点击