如果命名空间中没有export
ed成员,并且不需要在其他地方合并命名空间,那么这有什么好处:
namespace Dummy {
//code here
}
对此:
(() => {
//code here
})();
答案 0 :(得分:3)
IIFE在全球范围内减少了一件事(命名空间在全局范围内只留下了一件事),所以如果你不想要触及的东西,IIFE是最干净的解决方案。
虽然有一个有趣的平行线,但它是C#中的sealed
关键字...在类上使用Dummy
可以防止它被分类。在很多使用它的地方,有很多关于它如何难以扩展行为的抱怨。如果您的代码是库的一部分,您可能需要考虑是否要绝对隐藏IIFE中的<ArrayOfCurrency xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/MobileAssignmentApi.Models">
<Currency>
<Buy>21.19573</Buy>
<CurrencyId>53</CurrencyId>
<Name>USD/MXN</Name>
<PipMultiplier>10000</PipMultiplier>
<Sell>21.15679</Sell>
</Currency>
<Currency>
<Buy>1.46806</Buy>
<CurrencyId>22</CurrencyId>
<Name>EUR/NZD</Name>
<PipMultiplier>10000</PipMultiplier>
<Sell>1.46395</Sell>
</Currency>
<Currency>
<Buy>1.34658</Buy>
<CurrencyId>15</CurrencyId>
<Name>EUR/CAD</Name>
<PipMultiplier>10000</PipMultiplier>
<Sell>1.3445</Sell>
</Currency>
.
.
.
</ArrayOfCurrency>
,或者是否有人想要扩展或合并其内容 - 但它当然是您的选择根据您的具体情况。