扩展javascript标准类型陷阱

扩展javascript标准类型陷阱,javascript,Javascript,我已经得到了对象的扩展。原型充满了陷阱。 在扩展其他标准Javascript原型:String.prototype、Array.prototype、Function.prototype时是否存在任何问题 提前谢谢 [编辑]相关:非常有用 [编辑] 这不仅应该向您展示您的能力,还应该展示如何避免陷阱。:) 那么,扩展本地人是否还可以 我已经描述了一些不增加原生原型的原因;你可能知道其他人。您需要决定计划中的扩展是否会解决这些问题,以及扩展是否会增加代码库的功能和清晰度 如果将来的浏览器版本实现了

我已经得到了对象的扩展。原型充满了陷阱。 在扩展其他标准Javascript原型:String.prototype、Array.prototype、Function.prototype时是否存在任何问题

提前谢谢

[编辑]相关:

非常有用

[编辑] 这不仅应该向您展示您的能力,还应该展示如何避免陷阱。:)

那么,扩展本地人是否还可以

我已经描述了一些不增加原生原型的原因;你可能知道其他人。您需要决定计划中的扩展是否会解决这些问题,以及扩展是否会增加代码库的功能和清晰度

  • 如果将来的浏览器版本实现了
    Array.prototype.remove
    (由于升级到EcmaScript标准,或通过 他们自己的意志),他们的执行将被我们的 自定义一个,这不仅会降低效率(我们无法操纵 浏览器引擎内部用于方法优化),但 更重要的是,他们可能会有不同的、非标准的结果

  • 扩展本地对象会扰乱对象迭代周期。参数是这样的:因为for in循环将访问所有可枚举的 对象的原型链中的属性,自定义本机属性 将意外地包含在此类迭代中

  • 如果 它们恰好定义了一个同名的属性

  • 这个问题是相关的-