JavaScript   发布时间:2022-04-16  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了JavaScript编号,内存大小相同?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在阅读本书专业 JavaScript for Web Developers的 the Number Type section.似乎说所有的ECMAScript数字都是二进制64位浮点数,这是 this MDN article所证实的.但这本书的作者还说:

我预计每个数字占用相同的内存量:64位.而MDN的文章说:“没有特定的整数类型”.任何人都知道这本书作者的意思?当整数存储为64位浮点数时(如果我有这样的权限),整数会占用更少的内存?您将在上面的链接中找到整个部分(免费样本).

解决方法

JavaScript除了双精度浮点(ECMAScript 6 typed arrays除外)没有任何其他数字类型,但只要JavaScript代码的行为相同,底层实现可以选择以任何方式存储数字.

JavaScript是现在编译的,这意味着它可以在许多方面进行优化,这在语言中是不明显的.

如果一个函数中的局部变量只占用一个整数值,并且不会以任何方式暴露在函数之外,那么在编译代码时,实际上可以使用整数类型来实现.

不同浏览器的实现方式有所不同.目前看来,MS Edge在Firefox方面有很大的不同,在Firefox方面有很大的不同,而且在Chrome:http://jsperf.com/int-vs-double-implementation(没有任何区别)中,jsperf认为MS Edge是Chrome 42.)

进一步的研究:

JS引擎Spidermonkey(FireFox),V8(Chrome,Opera),JavaScriptCore(Safari),Chakra(IE)和Rhino(可能还有其他,但是更难找到实现细节)使用不同的方式使用整数类型或存储数字可能为整数.一些报价:

http://thibaultlaurens.github.io/javascript/2013/04/29/how-the-v8-engine-works/

http://trac.webkit.org/wiki/JavaScriptCore

https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey/Internals

https://blogs.windows.com/msedgedev/2015/05/20/delivering-fast-javascript-performance-in-microsoft-edge/

大佬总结

以上是大佬教程为你收集整理的JavaScript编号,内存大小相同?全部内容,希望文章能够帮你解决JavaScript编号,内存大小相同?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。