javascript数值介绍
2016-03-16 22:41
351 查看
javascript的数值和c/c++,java等主流语音不一样,不管是“double”型还是"int"型,它们在内存中都是64位浮点数。
比如我们执行:
结果是: true
执行:
结果还是true。
我们看下1.0 和 1 的类型:
返回结果都是: 'number',它们都是一个类型。
这样有什么好处呢,既然javascript这样设计,就肯定有它的原因。
这样完全避免了"double"型转"int"型丢失精度的问题,也避免了因为数字在内存中占用的字节数不一样导致的一系列的问题。
在我看来,因为javascript最初是在浏览器上执行的,而主流操作系统有32位和64之分,为了避免因为操作系统的不同,导致结果不一样的问题。
比如我们执行:
1.0 == 1
结果是: true
执行:
1.0 === 1
结果还是true。
我们看下1.0 和 1 的类型:
typeof 1.0 typeof 1
返回结果都是: 'number',它们都是一个类型。
这样有什么好处呢,既然javascript这样设计,就肯定有它的原因。
这样完全避免了"double"型转"int"型丢失精度的问题,也避免了因为数字在内存中占用的字节数不一样导致的一系列的问题。
在我看来,因为javascript最初是在浏览器上执行的,而主流操作系统有32位和64之分,为了避免因为操作系统的不同,导致结果不一样的问题。
相关文章推荐
- 前端笔记十四 JavaScript语法详解
- ECMAScript6中的一些小知识 json中的键和值一样,可以只写一个
- js里的事件传播--冒泡
- 【Mocha.js 101】同步、异步与 Promise
- 【Mocha.js 101】同步、异步与 Promise
- JavaScript与Java数据类型的区别
- JavaScript语言精粹(语句摘录)1
- C“中断” 与 JS“异步回调” 横向对比
- javascript MD5
- JS 正则验证 test()
- js学习笔记
- JavaScript函数内部属性和函数方法
- JavaScript高级程序设计(第三版)学习,第一次总结
- javascript 自定义事件
- JSON与XML的区别比较
- AugularJS 初入门
- Servlet跳转Jsp的两种方法
- Json
- JavaScript学习笔记(11)——HTML DOM Event对象
- JSP生命周期