作用域

2019-11-28  本文已影响0人  再见噜噜班

作用域

//全局作用域
var a=1
function foo(){//函数foo的作用域
        var a=2
        function fn(){//函数fn的作用域
                var a=3
        }
}
if(true){//ES6块级作用域
        let a=4
}
    //题1
    var x = 10
    function fn() {
        console.log(x) //作用域在函数定义时就已经确定了不改变
    }
    function show(f) {
        var x = 20
        f()
    }
    show(fn) //10

    //题2
    var fn = function (params) {
        console.log(fn)
    }
    fn()//输出fn函数

    var obj = {
        fn2:function(){
            console.log(fn)
        }
    }

    obj.fn2()//先在内部作用域找,然后去全局作用域找,找到fn函数并输出,如果要找找obj.fn2应该console.log(this.fn2)
上一篇 下一篇

猜你喜欢

热点阅读