• js访问函数内部的变量(三种方法)


    js访问函数内部的变量(三种方法)
    通过return访问:
    function bar(value) {
      var testValue = 'inner';
      
      return testValue + value;
    }
    
    console.log(bar('fun'));		// "innerfun"
    
    通过 闭包 访问函数内部变量:
    function bar(value) {
      var testValue = 'inner';
      
      var rusult = testValue + value;
      
      function innser() {
         return rusult;
      };
      
      return innser();
    }
    
    console.log(bar('fun'));		// "innerfun"
    
    立即执行函数:

    用它来分离全局作用域,形成一个单独的函数作用域。

    <script type="text/javascript">
    
        (function() {
    
          var testValue = 123;
    
          var testFunc = function () { console.log('just test'); };
    
        })();
    
        console.log(window.testValue);		// undefined
        
        console.log(window.testFunc);		// undefined
        
    </script>
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    它能够自动执行 (function() { //... })() 里面包裹的内容,能够很好地消除全局变量的影响;

    补充一下es6里面的块级作用域:

    块级作用域:
    for(var i = 0; i < 5; i++) {
      // ...
    }
    
    console.log(i)				// 5
    
    

    很明显,用 var 关键字声明的变量,在 for 循环之后仍然被保存这个作用域里;

    这可以说明: for() { }仍然在,全局作用域里,并没有产生像函数作用域一样的封闭效果。

    做产品的程序,才是好的程序员!
  • 相关阅读:
    android 解密工具
    android打包需要的图标
    Mac 创建软链接
    历届试题 Excel地址
    算法训练 字串统计
    最长回文子串
    算法提高 P1001【大数乘法】
    算法提高 拿糖果【埃氏筛 动态规划】
    算法训练 未名湖边的烦恼
    算法提高 合并石子【动态规划】
  • 原文地址:https://www.cnblogs.com/asplover/p/14426537.html
Copyright © 2020-2023  润新知