为了账号安全,请及时绑定邮箱和手机立即绑定

立即执行函数为什么会影响构造函数的原型链

立即执行函数为什么会影响构造函数的原型链

慕侠2389804 2019-02-19 21:16:21
我在写代码的时候遇见这个问题,代码如下:function test(){    }test.prototype.name = function(){    console.log("test_prototype");}(function(){    console.log("立即执行函数");})()请问,为什么连带test的prototype一起执行了?希望大神指点下。多谢。
查看完整描述

1 回答

?
慕莱坞森

TA贡献1810条经验 获得超4个赞

加分号啊。老生常谈了。


function test(){

    

}

test.prototype = function(){

    console.log("test_prototype");

}; //这里加分号,否则就连成一条语句执行了

(function(){

    console.log("立即执行函数");

})()


// 不加分号,浏览器就是这样认为的:


test.prototype = (function(){

    console.log("test_prototype");

})(function(){

    console.log("立即执行函数");

})()


// 也就是这样的:

f1 = function(){

    console.log("test_prototype");

};

f2 = function(){

    console.log("立即执行函数");

};

test.prototype = f1(f2)()


查看完整回答
反对 回复 2019-02-23
  • 1 回答
  • 0 关注
  • 368 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信