例如,我想用自己的對象替換標準Date
或Math
對象。JavaScript:是否允許覆蓋標準的內置對象?
我知道這是不明智的,會導致像instanceof
或toString.call
這樣的微妙問題,我們假設所有已知的替代者的公共行爲都被模仿。標準是否允許這樣的行爲?
例如,我想用自己的對象替換標準Date
或Math
對象。JavaScript:是否允許覆蓋標準的內置對象?
我知道這是不明智的,會導致像instanceof
或toString.call
這樣的微妙問題,我們假設所有已知的替代者的公共行爲都被模仿。標準是否允許這樣的行爲?
標準是否允許這樣的行爲?
是的。您可以覆蓋像控制檯,日期等本機對象的方法,但不是unpreventable誰沒有原型像Math
。
例如,
Date.prototype.getDate = function(){ return 5 }; //overriding getDate method
new Date().getDate() //returns 5
我明白,我可以修改本機對象,但我可以這樣做:'window.Date = MyDate' –
全局範圍內的任何東西都可以修改。 – gurvinder372
'非標準是否允許這樣的行動?'是的。 – gurvinder372
不推薦,但可能。 –
對於那些投票結束爲「基於意見爲主」的人來說,這是一個有明確答案的問題,那麼你爲什麼要投票結束POB? –