gpt4 book ai didi

Javascript原型(prototype)函数失败

转载 作者:行者123 更新时间:2023-11-28 18:46:27 24 4
gpt4 key购买 nike

我正在使用原型(prototype)函数,但无法理解为什么下面的简单示例没有返回数字的负数。

Number.prototype.neg = function(x) { return -x };

var num = -1;
var num2 = 1234;

console.log(num.neg()); // returns NaN (and not 1)
console.log(num2.neg()); // returns NaN (and not -1234);

知道我在哪里犯了错误吗?我知道我可以使用属性 getter 来代替,但我正在首先完成基础知识(并希望从错误中吸取教训)。

最佳答案

您没有向函数传递任何参数,因此根据您声明函数的方式,您需要执行以下操作:

num.neg(-1);

当 x 未定义时返回 -x 会得到 NaN。但这违背了目的。您需要稍微不同地声明该函数:

Number.prototype.neg = function() { return -this };

关于Javascript原型(prototype)函数失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35241910/

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