相关疑难解决方法(0)

浮点数学是否破碎?

请考虑以下代码:

0.1 + 0.2 == 0.3  ->  false
Run Code Online (Sandbox Code Playgroud)
0.1 + 0.2         ->  0.30000000000000004
Run Code Online (Sandbox Code Playgroud)

为什么会出现这些不准确之处?

language-agnostic math floating-point floating-accuracy

2798
推荐指数
28
解决办法
28万
查看次数

有没有办法将数字转换为读者友好格式?(例如$ 1.1k)

就像Stackoverlow声誉四舍五入,我希望用货币做同样的事情

$ 1,000 => 1k

$ 1,000,000 => 1m

我怎样才能在JavaScript中实现这一点(最好是在jQuery中)?

javascript jquery currency rounding

27
推荐指数
2
解决办法
2万
查看次数

JS中的1000000到1M和1000到1K等等

可能重复:
有没有办法将数字转换为友好格式?(例如$ 1.1k)
如何格式化类似Stack Overflow信誉格式的数字

我在JS中有很多数字,我想让它们以更短,更易于理解的方式出现.

所以:

1,000,000 = 1M

1,200,000 = 1.2M

1,450 = 1.45K and so on...
Run Code Online (Sandbox Code Playgroud)

任何想法我如何在JS或JQuery中做到这一点?

javascript jquery

4
推荐指数
1
解决办法
2万
查看次数

Swift 4:将数字格式化为友好的K.

目前正在开发一个简单的功能,对我来说做得很好..

例如:如果我有1000,它将打印1.0K,或1,000,000它将是1M,一切正常,直到这里,

如果我想将1,000,000,000转为1B怎么办?

我尝试了以下 - >

func formatPoints(from: Int) -> String {
     let number = Double(from)
     let thousand = number / 1000
     let million = number / 1000000
     let billion = number / 1000000000

     if million >= 1.0 { 
     return "\(round(million*10)/10)M" 
} else if thousand >= 1.0 { 
     return "\(round(thousand*10)/10)K"
} else if billion >= 1.0 {
        return ("\(round(billion*10/10))B")
} else {
    return "\(Int(number))"}
}

print(formatPoints(from: 1000000000))
Run Code Online (Sandbox Code Playgroud)

但它返回1000.0M,而不是1B

谢谢!

swift

3
推荐指数
2
解决办法
1654
查看次数