是什么让JavaScript中的原始值和对象包装值的可用性变得有用?

Del*_*ani 4 javascript primitive casting object

我写了一个博客张贴在不久前,详细说明在JavaScript中都原始和包装的对象,价值类型的可用性(的东西,如数字,字符串和布尔)是如何引起的麻烦,包括但不限于类型强制转换为布尔值(例如,对象包装的NaN,""和false实际上是类型转换为true.

我的问题是,有了这些混乱和问题,JavaScript对于内置类有两种类型的值有什么好处吗?

编辑:感谢您的快速解答.我认为JavaScript的创建者打算将原生作为一种使标量值​​具有子方法的方法,但它显然适得其反,导致更多问题.

Dan*_*llo 5

道格拉斯·克罗克福德,他们是永远不会有用:

类型化的包装器完全没必要,偶尔也会造成混乱.不要使用new Booleannew Numbernew String.

来源:JavaScript:好零件 - 附录B:不良零件(页114).

他甚至建议弃用第四版ECMAScript规范.