Javascript Highcharts numberFormat返回负零

Javascript Highcharts numberFormat返回负零,javascript,highcharts,Javascript,Highcharts,我正在使用Highcharts,并注意到有时当图表的值非常接近零时,它会将y轴标签或工具提示值格式化为“-0.00” 我尝试了以下代码: Highcharts.numberFormat(-0.00002,2) 它返回“-0.00”。它应该是“0.00” 我尝试用Highcharts包装numberFormat函数。包装以捕获此案例,但没有成功,我的包装没有执行。这是我的密码: $(document).ready(function () { (function (H) {

我正在使用Highcharts,并注意到有时当图表的值非常接近零时,它会将y轴标签或工具提示值格式化为“-0.00”

我尝试了以下代码:

Highcharts.numberFormat(-0.00002,2)
它返回“-0.00”。它应该是“0.00”

我尝试用
Highcharts包装
numberFormat
函数。包装
以捕获此案例,但没有成功,我的包装没有执行。这是我的密码:

$(document).ready(function () {
    (function (H) {
        H.wrap(H, 'numberFormat', function (proceed, number, decimals, decPoint, thousandsSep) {
            var originalResult = proceed.call(number, decimals, decPoint, thousandsSep);
            var result = originalResult.isMinusZero() ? originalResult.cutMinusSign() : originalResult;
            return result;
        });
    }(Highcharts));
});

有人能找到我的错误或提供其他解决方案吗?

wrap
使用prototype中的方法可以很好地工作,尝试以这种方式覆盖numberFormat:

(function (H) {
    var proceed = H.numberFormat;
    H.numberFormat = function (number, decimals, decPoint, thousandsSep) {
        var originalResult = proceed(number, decimals, decPoint, thousandsSep);
        var result = originalResult.isMinusZero() ? originalResult.cutMinusSign() : originalResult;
        return result;
    };
}(Highcharts));

Highcharts.numberFormat(-0.002, 4);

现场演示:

Highcharts.numberFormat()没有问题。。它正在使用JavaScript
toFixed()
函数。它只是告诉你零的哪一边是你的号码。例如:
var num=-0.00002;num.toFixed(2)
返回“-0.00”。再次调用
num.toFixed(5)
将返回您的原始号码:“-0.00002”@AntoJurković您的评论不完全正确
Highcharts.numberFormat()
正在使用
toFixed()
,但仅在调用
abs()
mathAbs(n).toFixed(c)
)之后使用。它会先检查数字是否为负数(保存一个带符号的字符串:
s=n<0?”-“:”
)。您是对的。我简化了一点。但这个标志仍然保留着。