JavaScript:是否允许覆盖标准内置对象?
例如,我想用我自己的对象替换标准的JavaScript:是否允许覆盖标准内置对象?,javascript,Javascript,例如,我想用我自己的对象替换标准的Date或Math对象 我知道这是不明智的,并且会导致一些微妙的问题,比如instanceof或toString.call,让我们假设替换者的所有已知公共行为都是模仿的。标准是否允许这样的行为 标准是否允许这样的行为 对。您可以覆盖本地对象(如console、Date等)的方法,但不适用于没有原型(如Math)的用户 比如说, Date.prototype.getDate = function(){ return 5 }; //overriding getDat
Date
或Math
对象
我知道这是不明智的,并且会导致一些微妙的问题,比如instanceof
或toString.call
,让我们假设替换者的所有已知公共行为都是模仿的。标准是否允许这样的行为
标准是否允许这样的行为
对。您可以覆盖本地对象(如console、Date等)的方法,但不适用于没有原型(如Math
)的用户
比如说,
Date.prototype.getDate = function(){ return 5 }; //overriding getDate method
new Date().getDate() //returns 5
标准是否允许这样的行为
对。您可以覆盖本地对象(如console、Date等)的方法,但不适用于没有原型(如Math
)的用户
比如说,
Date.prototype.getDate = function(){ return 5 }; //overriding getDate method
new Date().getDate() //returns 5
standart是否允许这样做?
是。不建议这样做,但可能这样做。对于那些投票以“主要基于意见”的方式结束的人来说,这是一个有明确答案的问题,那么你为什么投票以POB的方式结束它?是的,这是允许的,但你可能想详细说明这样做的必要性,因为可能有一种更好的方法,你看不到。标准艺术是否允许这样做?
是。不推荐,但可能。对于那些投票以“主要基于意见”结束的人来说,这是一个有明确答案的问题,那么,你为什么要投票将其作为POB关闭?是的,这是允许的,但你可能想详细说明这样做的必要性,因为可能有一种更好的方法,你没有看到。我知道我可以修改本机对象,但是我可以这样做吗:window.Date=MyDate
全局范围内的任何内容都可以修改。我知道我可以修改本机对象,但我可以这样做吗:window.Date=MyDate
全局范围内的任何内容都可以修改。