JS - 在原型函数中覆盖它

Jim*_*aro 1 javascript

我想在Number原型函数中覆盖并动态更改变量的值,例如:

Number.prototype.xd = function(){
  this = 11212;
}
var a = 171717;
console.log(a);
a.xd();
console.log(a);
Run Code Online (Sandbox Code Playgroud)

是我想要的,但它会引发错误.通过这种方式工作Array.prototype.pop方法:

fruits = ["a","b","c","d"];
console.log(fruits);
fruits.pop();
console.log(fruits);
Run Code Online (Sandbox Code Playgroud)

我可以这样做吗?

nem*_*035 6

你无法达到你想要的,因为JS中的数字是不可变的.

这不起作用的另一个原因是因为thisJS的定义已经是动态的,所以每次调用一个函数时它都会自动改变,这取决于它的调用方式.