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的一个浮动框(扩展性比较好 )
Aug 27 Javascript
原生JS实现加入收藏夹的代码
Oct 24 Javascript
javascript获取flash版本号的方法
Nov 20 Javascript
原生js实现移动开发轮播图、相册滑动特效
Apr 17 Javascript
jQuery+canvas实现简单的球体斜抛及颜色动态变换效果
Jan 28 Javascript
微信小程序 传值取值的几种方法总结
Jan 16 Javascript
vue 添加vux的代码讲解
Nov 30 Javascript
微信小程序loading组件显示载入动画用法示例【附源码下载】
Dec 09 Javascript
vue中v-model的应用及使用详解
Jun 27 Javascript
JQuery扩展对象方法操作示例
Aug 21 jQuery
小程序实现上下切换位置
Nov 16 Javascript
JavaScript中跨域问题的深入理解
Mar 04 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学习之正则表达式
2011/04/17 PHP
PHP中使用gettext来支持多语言的方法
2011/05/02 PHP
Apache2中实现多网站域名绑定的实现方法
2011/06/01 PHP
php中日期加减法运算实现代码
2011/12/08 PHP
php通过array_unshift函数添加多个变量到数组前端的方法
2015/03/18 PHP
php+ajax实现无刷新文件上传功能(ajaxuploadfile)
2018/02/11 PHP
Bootstrap+PHP实现多图上传功能实例详解
2018/04/08 PHP
php识别翻转iphone拍摄的颠倒图片
2018/05/17 PHP
因str_replace导致的注入问题总结
2019/08/08 PHP
聊聊 PHP 8 新特性 Attributes
2020/08/19 PHP
Aster vs Newbee BO3 第三场2.18
2021/03/10 DOTA
javascript 二分法(数组array)
2010/04/24 Javascript
jquery实现TAB选项卡鼠标经过带延迟效果的方法
2015/07/27 Javascript
js实现图片无缝滚动
2015/12/23 Javascript
判断是否存在子节点的实现代码
2016/05/18 Javascript
JavaScript中捕获与冒泡详解及实例
2017/02/03 Javascript
js 实现省市区三级联动菜单效果
2017/02/20 Javascript
详解使用vue-router进行页面切换时滚动条位置与滚动监听事件
2017/03/08 Javascript
javascript基本常用排序算法解析
2017/09/27 Javascript
node.js到底要不要加分号浅析
2018/07/11 Javascript
vue实现微信浏览器左上角返回按钮拦截功能
2020/01/18 Javascript
基于vue hash模式微信分享#号的解决
2020/09/07 Javascript
vue实现一个矩形标记区域(rectangle marker)的方法
2020/10/28 Javascript
Python 正则表达式匹配字符串中的http链接方法
2018/12/25 Python
Django 开发调试工具 Django-debug-toolbar使用详解
2019/07/23 Python
pygame实现弹球游戏
2020/04/14 Python
scrapy头部修改的方法详解
2020/12/06 Python
80年代复古T恤:TruffleShuffle
2018/07/02 全球购物
C++是不是类型安全的
2014/02/18 面试题
高中三年学习生活的自我评价
2013/10/10 职场文书
办公室前台的岗位职责
2013/12/20 职场文书
客户服务经理岗位职责
2014/01/29 职场文书
班组长竞聘书
2014/03/31 职场文书
仓库统计员岗位职责
2015/04/14 职场文书
读《推着妈妈去旅行》有感1500字
2019/10/15 职场文书
Python import模块的缓存问题解决方案
2021/06/02 Python