猿问

关于js立即执行函数

varobj=function(){
vara={
publicMethod:function(){
console.log("SelfFunction");
}
};
console.log("Test");
}();
console.log(obj);//undefine??
为什么这里是undefine??
哔哔one
浏览 326回答 2
2回答

MMTTMM

obj的值是function的返回值,由于你的function没有明确指定返回值,所以相当于在console.log("Test");下有return;因此obj的值为undefine。

动漫人物

V8君(JSRuntime)一看到var声明变量加赋值,马上开始执行,结果一看=后面,这TM赋的是个啥值啊?立即执行函数啊?没办法先执行了这个立即执行函数吧!执行完毕,但这函数啥都没返回,并没有什么卵用嘛!擦!还是不知道这SB人类到底要赋啥值。算了,undefine吧。
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答