8e3评估的数字是多少?

时间:2012-02-07 17:21:20

标签: javascript jquery

我今天遇到了这段代码:

b = setTimeout(function () {
    // do some javascript stuff here
}, 8e3)

超时设置为8e3。这段时间等于几毫秒,为什么有人会选择这种奇怪的符号?该代码似乎完全正常运行。

4 个答案:

答案 0 :(得分:35)

8e3是三倍的力量的八倍,即8000.这称为scientific (or exponential) notation。试想一下,“e”代表“* 10 ^”。

在这种情况下,使用该表示法并没有多大意义,但是一旦开始获得更大的数字,指数表示法就会变得更具可读性。要计算出“1000000000”是多少,你必须计算零,但1e9是显而易见的。

答案 1 :(得分:17)

这称为浮点表示法科学记数法。它是8×10 3, 8000毫秒。 e代表第10个指数。让我举几个例子:

1e3    = 1000        // 1×10³
1e0    = 1           // 1×10⁰
1e-1   = 0.1         // 1×10⁻¹ -> Works also for the negatives
1.23e9 = 1230000000  // And really makes sense to shorten big numbers

还有关于该主题的维基百科文章: Scientific Notation

答案 2 :(得分:9)

8e3正好是8000,所以时间恰好是8秒。

可以选择(例如,通过一些代码缩小器),因为它只需要3个字符而不是4个来表示8000。这意味着你在这个地方获得了25%的空间:)

这不是“奇怪的”符号,它只是表达数字的另一种方式:Floating point notation

答案 3 :(得分:9)

8 * 10 3 = 8000 ms,即8秒