zoukankan      html  css  js  c++  java
  • JavaScript -- 作用域

    (function() {
        // let i = 0; // 函数作用域 1
        // for (let i = 0; i < 4; i++){ // 块级作用域 2
        // for (var i = 0; i < 4; i++){ // 函数作用域 存在变量提升,不管var 变量定义在函数的哪个位置,都会被提升到函数最上面 3
        for (i = 0; i < 4; i++){ // 全局作用域 1 4
            console.log('块i', i) // 1 2 3 4 每种情况都会正常执行
        }
        console.log('函数i', i); // 1 3 情况会正常执行
    })();
    console.log('全局i', i); // 4 情况会正常执行

    @、嵌套函数中的 this

    var obj = {
        myname: 'obj',
        outFunc: function() {
            self = this;
            console.log(self.myname); // obj
            function innerFunc() {
                console.log(this.myname); // undefined  这里的this指向的是window
                console.log(this); // Window
                console.log(self.myname); // obj
            }
            innerFunc();
        }
    }
    console.log(obj.myname); // obj
    obj.outFunc();
  • 相关阅读:
    今日总结
    今日总结
    今日总结
    今日总结
    今日总结
    java自学
    java自学
    Java自学
    Java自学
    java自学
  • 原文地址:https://www.cnblogs.com/yarightok/p/15484332.html
Copyright © 2011-2022 走看看