gpt4 book ai didi

javascript - 我是否目睹了 JavaScript 中的运算符重载?

转载 作者:行者123 更新时间:2023-11-28 17:38:28 25 4
gpt4 key购买 nike

我认为 JavaScript 中不存在运算符重载这样的东西。

然后我注意到当使用这个 BigNumber class 时,我其实可以做减法:

let a = new BigNumber("5432");
let b = new BigNumber(1234);
let c = a - b;
console.log(c); // 4198

这怎么可能,或者我在这里错过了什么?

最佳答案

JavaScript 没有运算符重载。

提供了

BigNumber.prototype.valueOf,它返回一个值。阅读valueOf

来自 MDN:

function MyNumberType(n) {
this.number = n;
}

MyNumberType.prototype.valueOf = function() {
return this.number;
};

var myObj = new MyNumberType(4);
myObj + 3; // 7

关于javascript - 我是否目睹了 JavaScript 中的运算符重载?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48529420/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com