2016-11-30 72 views
5

如果您在Firefox和Chrome中运行此代码,它将输出一个不同的转换字符串。为什么在浮动元素上使用toString()会在Firefox和Chrome浏览器中产生不同的结果?

(0.1234).toString(36) 

在Firefox它将返回的"0.4fxcm49g2j8"

在Chrome或节点的值4+(可能是V8差),我得到的"0.4fxcm49g2j91m31w5nq6ldte29"值。

在IE和边缘是"0.4fxcm49g2j91"(感谢@JaromandaX)

任何人都知道为什么吗?只是好奇。

+1

供参考:IE和Edge ='“0.4fxcm49g2j91”' –

回答

3

似乎Firefox会在max_chars(每个表示基数不同)后截断字符串,而Chrome不会。

我没有找到在MDN任何有效的参考,但如果你检查(例如)为基数= 35是相同的:

Firefox: "0.4b5r4d4d4d4" 
Chrome: "0.4b5r4d4d4d4ar1synaijrkxa67ojifsn1fyljg8bny4ix53gyasaqys92cxcprnbsg27hs9ht7wb3o3i0ibfu9wvlyykt2evoykvyrva0n0wotvvtjxxnc98bptr68t77wl74xpwsf0iui8gtkhw45c9bhxkw8q6ltnpjti9110jqhdfxn3572gy3gsg74j7b55ids0vyfldmp2m4q32a7m1bf392ag1cppfwt1hvs57ne98v1ep5pa8un6bymql44dv1b6digg657rl1t82myanxb2q3nwf20vk1rl3rlylnbxansyhyuhie6pl1kmsqdhqhkmoqbanpj0d2vyiqxao70qrgarpyw7hdkdlly2048jx1f9ojl8417lr7j7f33d74r2bycapvhuq5vxr869r433q5rip9kpe7wft319p211af7x3v28f3ibto7s3c7rpg53kfbhtt23rta17fqw3653psp1febq2veigemernc4q85hjwx86awmb0npiqnm3f4994c9pu02bbn0nde9fnaqnmx68yp0q1itvc4jisckdtf08d26k4oha3lsh6g26o9pfoppwyrtbqgdpav2i2k0dhucraowuuoysx9h4ii3ht4qx9snj5w1k7nxnpspstd56dw8efbah6ly1km21g7nntn4sxup3fan1j576jbh02w1ixr5xivir0npqfdykndh5tcr32n6jt5lpe7a1u7efqkpdjgkwtmi3k2bcs4nuvkp6o5ds9l9biuw9td0ofhtgyffgyu5w4twliug2mkmpy9lk8m1pk211gfiwvutp5t0qfclfo0in7b3nml3s578aybv9yovwwvwn428bvuitux4lfgxenv93jp2dovf3fr73nhxrqik7u086crrtq7gm1xqw2i5ikkr8cxjyufvehpyqebse3ioex82yqn835p8g2xriidikp96swm2vfjwwdt54xurj2ufhdy0b805gixv9vrwcuf2rd56dtkgonpipcswbg1cjfxddbwlxwmew0xymmfv972enwa0wjuakcd2fswl4e4794bs7gqvcgaksxh21tjs74r9b9rwun4x8osk" 

您可以在所有浏览器检查:

Chrome的最大lenght我得到的是1101,而在Firefox中是19

它看起来像一些舍入时转换基地之间的数字,但我不知道确切哪些/什么时候/什么轮火狐适用在这里。

+0

感谢您的洞察力 - 合理! – bonesbrigade