Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/370.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/arduino/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript:是否允许覆盖标准内置对象?_Javascript - Fatal编程技术网

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
全局范围内的任何内容都可以修改。