JavaScript将数据转换成整数的方法


Posted in Javascript onJanuary 04, 2014

JavaScript提供将数值转成整数的方法parseInt,用于转换字符串数据“123”,或者浮点数1.23。

parseInt("1");  // 1
parseInt("1.2");  // 1
parseInt("-1.2");  // -1
parseInt(1.2);  // 1
parseInt(0);  // 0
parseInt("0");  // 0

但是这个parseInt函数不是经常有效:

parseInt('06'); // 6
parseInt('08'); // 0  注意,谷歌新版已修正
parseInt("1g"); // 1
parseInt("g1"); // NaN

为此,我写了一个函数将任意数据转换成整数。

function toInt(number) {
    return number*1 | 0 || 0;
}//test
toInt("1");  // 1
toInt("1.2");  // 1
toInt("-1.2");  // -1
toInt(1.2);  // 1
toInt(0);  // 0
toInt("0");  // 0
toInt(Number.NaN);  // 0
toInt(1/0);  // 0

这里还有网友写的转换函数,也记下来提供参考,同样适合将数据转换成整数。
function toInt(number) {
    return number && + number | 0 || 0;
}

注意了,以上两个函数js能表示的整数有效范围是 -1569325056 ~ 1569325056

为了在js中表达更大范围的数值,我还写了一个函数提供参考,如下:

function toInt(number) {
    return Infinity === number ? 0 : (number*1 || 0).toFixed(0)*1;
}
Javascript 相关文章推荐
JQuery Dialog的内存泄露问题解决方法
Jun 18 Javascript
使用不同的方法结合/合并两个JS数组
Sep 18 Javascript
Bootstrap精简教程
Nov 27 Javascript
学习javascript文件加载优化
Feb 19 Javascript
JavaScript字符串常用的方法
Mar 10 Javascript
详解堆的javascript实现方法
Nov 29 Javascript
微信小程序 video详解及简单实例
Jan 16 Javascript
Vuex简单入门
Apr 19 Javascript
jQuery Json数据格式排版高亮插件json-viewer.js使用方法详解
Jun 12 jQuery
vue-router 手势滑动触发返回功能
Sep 30 Javascript
Angular7中创建组件/自定义指令/管道的方法实例详解
Apr 02 Javascript
js实现图片跟随鼠标移动效果
Oct 16 Javascript
jquery.post用法关于type设置问题补充
Jan 03 #Javascript
JQuery处理json与ajax返回JSON实例代码
Jan 03 #Javascript
jquery.post用法示例代码
Jan 03 #Javascript
简单的代码实现jquery定时器
Jan 03 #Javascript
jquery将一个表单序列化为一个对象的方法
Jan 03 #Javascript
jQuery的DOM操作之删除节点示例
Jan 03 #Javascript
JQuery中dataGrid设置行的高度示例代码
Jan 03 #Javascript
You might like
php smarty模版引擎中的缓存应用
2009/12/11 PHP
PHP面向对象程序设计之命名空间与自动加载类详解
2016/12/02 PHP
PHP 类与构造函数解析
2017/02/06 PHP
PhpStorm 如何优雅的调试Hyperf的方法步骤
2019/11/24 PHP
js获取系统的根路径实现介绍
2013/09/08 Javascript
javascript中Array()数组函数详解
2015/08/23 Javascript
jQuery操作css样式
2017/05/15 jQuery
详解nodejs微信jssdk后端接口
2017/05/25 NodeJs
小程序的上传文件接口的注意要点解析
2019/09/17 Javascript
[03:23:49]2016.12.17日完美“圣”典全回顾
2016/12/19 DOTA
[01:03:51]2018DOTA2亚洲邀请赛 4.7 淘汰赛 VP vs LGD 第三场
2018/04/09 DOTA
[02:46]完美世界DOTA2联赛PWL DAY4集锦
2020/11/03 DOTA
详解Python中expandtabs()方法的使用
2015/05/18 Python
python实现文本文件合并
2015/12/29 Python
Python语言描述连续子数组的最大和
2018/01/04 Python
python Web开发你要理解的WSGI & uwsgi详解
2018/08/01 Python
Python爬取个人微信朋友信息操作示例
2018/08/03 Python
django自带serializers序列化返回指定字段的方法
2019/08/21 Python
python 三元运算符使用解析
2019/09/16 Python
python 利用turtle库绘制笑脸和哭脸的例子
2019/11/23 Python
python3安装OCR识别库tesserocr过程图解
2020/04/02 Python
python中return不返回值的问题解析
2020/07/22 Python
matplotlib 多个图像共用一个colorbar的实现示例
2020/09/10 Python
韩国演唱会订票网站:StubHub韩国
2019/01/17 全球购物
英国电气世界:Electrical World
2019/09/08 全球购物
"火柴棍式"程序员面试题
2014/03/16 面试题
static全局变量与普通的全局变量有什么区别
2014/05/27 面试题
Windows和Linux动态库应用异同
2016/04/17 面试题
英智兴达软件测试笔试题
2016/10/12 面试题
举例说明类变量和实例变量的区别
2016/06/30 面试题
计算机专业推荐信范文
2013/11/27 职场文书
学校领导班子四风问题整改意见
2014/10/02 职场文书
维稳工作情况汇报
2014/10/27 职场文书
房地产销售主管岗位职责
2015/02/13 职场文书
委托收款证明
2015/06/23 职场文书
Nginx代理同域名前后端分离项目的完整步骤
2021/03/31 Servers