new函数() 和 普通函数() 的区别

2019-07-07  本文已影响0人  关耳木南

区别:
1、new执行的函数,函数内部默认生成了一个对象
2、函数内部的this默认指向了这个new生成的对象
3、new执行函数生成的这个对象,是函数的默认返回值

function fn(){
        console.log(this)
    }
    fn(); //this指向window
    new fn(); //this指向fn  指向一个对象
    function fn1(){

    }
    var obj1 = fn1();//遇到等号先看右边,fn1函数执行,执行完函数拿到最简结果(函数的返回值)才会进行赋值
    var obj2 = new fn1();
    console.log(obj1);//undefined
    console.log(obj2);//fn1{}
上一篇 下一篇

猜你喜欢

热点阅读