8e3评估的是多少?
我今天遇到了这个代码:
b = setTimeout(function () { // do some javascript stuff here }, 8e3)
超时设置为8e3
。 这段时间等于几毫秒,为什么有人会选择这种奇怪的符号? 代码似乎function齐全。
8e3
是三次8e3
的八倍,即8000.这被称为科学(或指数)符号 。 试想一下,“e”代表“* 10 ^”。
在这种情况下,使用该表示法并没有多大意义,但是一旦开始获得更大的数字,指数表示法就会变得更具可读性。 要计算出“1000000000”是多少,你必须计算零,但1e9立即显而易见。
这称为浮点符号或科学符号 。 它是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
还有一篇关于该主题的维基百科文章: 科学记谱法
8e3
正好是8000
,所以时间恰好是8秒。
这可以被选择(例如,通过一些代码缩小器),因为它恰好需要3个字符而不是4个来表示8000
。 这意味着你在这个单一的地方获得25%的空间:)
这不是“奇怪的”符号,它只是表达数字的另一种方式: 浮点符号
8 * 10 3 = 8000 ms,即8秒