在JavaScript中“(函数(){})”和“(函数(){}()”)在功能上是否相等?以下两个代码块都处于警报状态。foo然后bar..唯一的区别是})()和}()).代码1:(function(){
bar = 'bar';
alert('foo');})();alert(bar);代码2:(function(){
bar = 'bar';
alert('foo');}());alert(bar);那么,除了语法之外,还有什么区别吗?
3 回答
慕仙森
TA贡献1827条经验 获得超8个赞
new.something
代码1
new (function() {
this.prop = 4;}) ().prop;prop4.
function MyClass() {
this.prop = 4;}new MyClass().prop;代码2
new ( function() {
return { Class: function() { } }; }() ).Class;newClassnewnew.Classnew
var namespace = { Class: function() { } };function getNamespace() { return namespace; }new ( getNamespace() ).Class;//Or,new namespace.Class;getNamespace()(new getNamespace()).ClassgetNamespaceClass
烙印99
TA贡献1829条经验 获得超13个赞
+function() {
bar = 'bar';
alert('foo');}();+
(function() {
// ...})();添加回答
举报
0/150
提交
取消
