this方面的题

105 阅读1分钟
    var c=3;
    function getC() {
        this.c++;
        return function (c) {
            c=this.c*2;
            console.log(c);
        }
    }
    var obj3={
          c:2,
          getC:(function () {
               this.c-=1;
               return this.getC
        })()
    };
    getC();
    obj3.getC();
    var f3=obj3.getC;
    f3();
    console.log(window.c);
    console.log(obj3.c);
  function g1() {
        this.g = "gg"
    }
    var obj4 = {
        g1: g1,
        gg: function () {
            g1();
        }
    };
    obj4.g1();
    obj4.gg();
    console.log(obj4);
    console.log("g" in window);
  var number = 2;
    var obj = {
        number: 4,
        fn1: (function () {
            this.number *= 2;
            number = number * 2;
            var number = 3;
            return function () {
                this.number *= 2;
                number *= 3;
                alert(number);
            }
        })()
    };
    var fn1 = obj.fn1;
    alert(number);
    fn1();
    obj.fn1();
    alert(window.number);
    alert(obj.number);
        var a = 2;
        var obj1 ={
            a:1,
            fn1:(function(a){
                this.a=a;
                a++;
                return function () {
                    this.a=a++;
                    console.log(a)
                }
            })(a)
        }
        obj1.fn1();
        var fn1=obj1.fn1;
        fn1()
var number = 2;
    var obj = {
        number: 4,
        fn1: (function () {
            this.number *= 2;
            number = number * 2;
            var number = 3;
            return function () {
                this.number *= 2;
                number *= 3;
                alert(number);
            }
        })()
    };
    var fn1 = obj.fn1;
    alert(number);
    fn1();
    obj.fn1();
    alert(window.number);
    alert(obj.number);
 var num = 2;
    var obj = {num: 1};
    obj.fn = (function (num) {
        this.num += 2;
        num--;
        return function (n) {
            this.num += 2;
            num--;
            console.log(n + ++num);
        }
    })(this.num);
    var fn = obj.fn;
    fn(2);
    obj.fn(1);
    console.log(num, obj.num);