使用Prototype扩展本机对象不好吗?

Ell*_*lle 15 javascript prototype

我读的地方,使用prototype扩展原生对象(String,Number,Array等)是个坏主意.这是真的?为什么或者为什么不?

And*_*den 5

我不认为这很糟糕.如果您看一下Ruby on Rails,很多本机对象都会使用自定义功能进行扩展,这是一个非常好的框架.

如果您更改本机对象上的现有方法,那将会是什么坏事.这可能会导致不可预见的后果.


Jam*_*son 5

在Andrew Dupont的JSConf 2011的视频中对此进行了很好的讨论.http://blip.tv/jsconf/jsconf2011-andrew-dupont-everything-is-permitted-extending-built-ins-5211542

基本上要点是:

  • 不要延长 Object.prototype
  • 有些人可能喜欢延伸东西,有些人则不喜欢
  • 你需要知道你在做什么
  • 不要使用两个扩展内容的库,因为它可能很糟糕
  • 扩展原型以添加标准功能几乎总是可以的.