-2
在Ruby中,我們可以在運行時動態修改它添加一個新的方法,以先前定義的類:在JavaScript中爲類添加新方法?
class String
def to_magic
"magic"
end
end
是否有可能做同樣的在JavaScript?如果是,如何?
在Ruby中,我們可以在運行時動態修改它添加一個新的方法,以先前定義的類:在JavaScript中爲類添加新方法?
class String
def to_magic
"magic"
end
end
是否有可能做同樣的在JavaScript?如果是,如何?
在JavaScript中的等價物:
String.prototype.toMagic = function(){
return "magic";
}
console.log("".toMagic());//>>> "magic"
簡短的回答:是的。 –
是的,通過['String.prototype'](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/prototype)和類似的。例子:['.trim()'polyfill](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/Trim#Compatibility)。請注意,JavaScript中的猴子修補可能會影響其他操作,例如'for..in'循環。 –
爲什麼downvotes? –