zoukankan      html  css  js  c++  java
  • JavaScript ES6 的 let 和 var 的比较

    在JavaScript 1.7中, let 关键词被添加进来, 我听说它声明之后类似于”本地变量“, 但是我仍然不确定它和 关键词 var 的具体区别。

        回答:

        不同点在于作用域, var关键词的作用域是最近的函数作用域(如果在函数体的外部就是全局作用域), let 关键词的作用域是最接近的块作用域(如果在任何块意外就是全局作用域),这将会比函数作用域更小。

        同样, 像var 一样, 使用let 声明的变量也会在其被声明的地方之前可见。 


    下面是Demo 例子。

    全局(Global)

    当在函数体之外它们是平等的。

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

    函数(Function)

    当瞎下面这种, 也是平等的。

    1. function ingWithinEstablishedParameters() {  
    2.     let terOfRecommendation = 'awesome worker!'; //function block scoped  
    3.     var sityCheerleading = 'go!'; //function block scoped  
    4. }; 

    块(Block)

    这是不同点, let 只是在 for 循环中, var  却是在整个函数都是可见的。

    1. function allyIlliterate() {  
    2.     //tuce is *not* visible out here  
    3.   
    4.     for( let tuce = 0; tuce < 5; tuce++ ) {  
    5.         //tuce is only visible in here (and in the for() parentheses)  
    6.     };  
    7.   
    8.     //tuce is *not* visible out here  
    9. };  
    10.   
    11. function byE40() {  
    12.     //nish *is* visible out here  
    13.   
    14.     for( var nish = 0; nish < 5; nish++ ) {  
    15.         //nish is visible to the whole function  
    16.     };  
    17.   
    18.     //nish *is* visible out here  
    19. }; 
  • 相关阅读:
    二级指针与二维数组
    Linux下常用命令
    winows下使用ssh服务远程登录vbox中的虚拟机
    Shell脚本获取C语言可执行程序返回值
    memcpy与memmove的区别
    常用软件
    书目
    顺序表C语言版
    限定符【const】用法大全
    极大极小搜索和α-β剪枝
  • 原文地址:https://www.cnblogs.com/dexjinkey/p/6089945.html
Copyright © 2011-2022 走看看