我之前已经看过该技术,它是有效的,您正在使用函数表达式,就好像它是构造函数一样。
但是恕我直言,您可以使用自动调用函数表达式来实现相同的功能,我真的不明白
new以这种方式使用运算符的意义:
var someObj = (function () { var instance = {}, inner = 'some value'; instance.foo = 'blah'; instance.get_inner = function () { return inner; }; instance.set_inner = function (s) { inner = s; }; return instance;})();new操作员的目的是创建新的对象实例,设置
[[Prototype]]内部属性,您可以看到
[Construct]内部属性是如何实现的。
上面的代码将产生等效的结果。



