我阅读了 ecmascript 9.8.1 部分 ToString 应用于数字类型,但我不知道它是什么意思。
运算符 ToString 将数字 m 转换为字符串格式,如下所示:
如果 m 为 NaN,则返回字符串“NaN”。
如果 m 为 +0 或 -0,则返回字符串“0”。
如果 m 小于零,则返回字符串“-”和 ToString(-m) 的字符串连接。
如果 m 为无穷大,则返回字符串“Infinity”。
否则,令n、k、s为整数,使得k >= 1, 10k-1<= s <10k,s * 10n-k的数值为m,k尽可能小。请注意,k 是 s 的十进制表示中的位数,即 s 不能被 10 整除,并且 s 的最低有效位不一定由这些标准唯一确定。
如果 k <= n <= 21,则返回由 s 的十进制表示的 k 位数字组成的字符串(按顺序,不带前导零),后跟出现 nk 个字符“0”。
如果 0 < n <= 21,则返回由 s 的十进制表示的最高 n 位数字组成的字符串,后跟一个小数点 '。',后跟 s 的十进制表示的剩余 kn 位。
如果 -6 < n <= 0,则返回由字符 '0' 后跟小数点 ' 组成的字符串。',后跟 -n 次出现的字符 '0',然后是 s 的十进制表示的 k 位。
否则,如果k = 1,则根据n-1是正数还是负数,返回由s的一位数,后跟小写字符'e',后跟加号'+'或减号'-'组成的字符串,后跟整数 abs(n-1) 的十进制表示(没有前导零)。
返回由 s 的十进制表示的最高有效位组成的字符串,后跟一个小数点 '。',后接s的十进制表示的剩余k-1位,后接小写字符'e',后接加号'+'或减号'-'根据n-1是正还是负,后跟整数 abs(n-1) 的十进制表示(没有前导零)。
有人可以向我解释该算法或给我一个关于应用于数字类型的 ToString 的博客吗?