我想知道什么会提醒这个javascript表达式
alert( 20e-1['toString'](2) );
我需要有关答案的详细解释。
谢谢你的详细解答!
答案 0 :(得分:4)
结果为10
。
让我们剖析表达式20e-1['toString'](2)
:
20e-1
是科学计数法中指定的浮点数,是20 * 10^-1 ( = 20 * 0.1 = 2)
的简写。
toString
是原始值的属性,浮点数2
。 toString
是一个将数字转换为字符串表示形式的函数。语法建议将原始值提升为Number
对象,然后引用其属性toString
(现实更复杂,this SO answer将解释它以比我可以重复的更明智的方式。)
(2)
是方法toString
的实际参数列表。单个参数指定将数字转换为基数2中的字符串表示。基数2表示2
恰好是10
,它解释了输出。