JavaScript:toLocaleString()

时间:2017-02-14 05:16:51

标签: javascript internationalization number-formatting

我的JavaScript toLocaleString()在这里做了一些奇怪的事情。如果我的数字小于1000,它会给出点作为十进制分隔符,但如果我的数字超过1000,它会给我逗号作为十进制分隔符。

我的区域设置使用点作为千分隔符,逗号作为小数分隔符。

这就是我使用代码的方式:

sellingPrice.toLocaleString(undefined, { minimumFractionDigits: 2 }

如果sellPrice为700,它会给我700.00 如果sellPrice为7000,则会向我7.000,00

但结果是一样的

为什么会这样?

2 个答案:

答案 0 :(得分:1)

我刚发现javascript正在跟随浏览器区域设置。

在我的情况下,我使用铬。我必须将语言改为我的语言(印度尼西亚)以实现我的目标,这有点令人失望。我希望我的浏览器语言是英语。

我不能使用" en"或" de"因为我希望代码是动态的并遵循用户区域设置。

答案 1 :(得分:0)

    Alamofire.request(URL, method: .post, parameters: paramaters, encoding: JSONEncoding.default)
.responseJSON { response in
    print(response)
}

会为您提供结果var sellingPrice=700;sellingPrice.toLocaleString('en-us', { minimumFractionDigits: 2 });

700.00

会为您提供结果var sellingPrice=7000;sellingPrice.toLocaleString('en-us', { minimumFractionDigits: 2 });