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 相关文章推荐
window.parent调用父框架时 ie跟火狐不兼容问题
Jul 30 Javascript
JavaScrip单线程引擎工作原理分析
Sep 04 Javascript
jquery Mobile入门—多页面切换示例学习
Jan 08 Javascript
JavaScript程序员应该知道的45个实用技巧
Mar 04 Javascript
DOM基础教程之事件对象
Jan 20 Javascript
jquery实现华丽的可折角广告代码
Sep 02 Javascript
jQuery插件pagination实现无刷新分页
May 21 Javascript
利用n 升级工具升级Node.js版本及在mac环境下的坑
Feb 15 Javascript
基于jQuery实现定位导航位置效果
Nov 15 jQuery
jQuery实现仿京东防抖动菜单效果示例
Jul 06 jQuery
JavaScript常见事件处理程序实例总结
Jan 05 Javascript
vue-router 路由传参用法实例分析
Mar 06 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/12/05 PHP
PHP高级对象构建 工厂模式的使用
2012/02/05 PHP
php缩小png图片不损失透明色的解决方法
2013/12/25 PHP
WordPress中给文章添加自定义字段及后台编辑功能区域
2015/12/19 PHP
值得分享的php+ajax实时聊天室
2016/07/20 PHP
Yii2框架实现数据库常用操作总结
2017/02/08 PHP
JS打开新窗口的2种方式
2013/04/18 Javascript
javascript中怎么做对象的类型判断
2013/11/11 Javascript
浅谈window.onbeforeunload() 事件调用ajax
2016/06/29 Javascript
微信小程序 wx:key详细介绍
2016/10/28 Javascript
理解AngularJs篇:30分钟快速掌握AngularJs
2016/12/23 Javascript
Vue-Router实现页面正在加载特效方法示例
2017/02/12 Javascript
利用forever和pm2部署node.js项目过程
2017/05/10 Javascript
简单实现js点击展开二级菜单功能
2017/05/16 Javascript
详解Angular 4.x NgTemplateOutlet
2017/05/24 Javascript
vue 组件的封装之基于axios的ajax请求方法
2018/08/11 Javascript
React 实现拖拽功能的示例代码
2019/01/06 Javascript
JS实现指定区域的全屏显示功能示例
2019/04/25 Javascript
MockJs结合json-server模拟后台数据
2020/08/26 Javascript
微信小程序使用Vant Weapp组件库的方法步骤
2019/08/01 Javascript
基于vue+echarts数据可视化大屏展示的实现
2020/12/25 Vue.js
Python获取当前路径实现代码
2017/05/08 Python
分析python请求数据
2018/08/19 Python
python基于socket进行端口转发实现后门隐藏的示例
2019/07/25 Python
Django框架models使用group by详解
2020/03/11 Python
Python基础类继承重写实现原理解析
2020/04/03 Python
Python日志处理模块logging用法解析
2020/05/19 Python
JupyterNotebook 输出窗口的显示效果调整实现
2020/09/22 Python
python 批量将中文名转换为拼音
2021/02/07 Python
css3之UI元素状态伪类选择器实例演示
2017/08/11 HTML / CSS
纯CSS3实现8组超炫酷鼠标滑过图片动画
2016/03/16 HTML / CSS
Java中的类包括什么内容?设计时要注意哪些方面
2012/05/23 面试题
联谊活动策划书
2014/01/26 职场文书
悬崖上的金鱼姬观后感
2015/06/15 职场文书
保安辞职申请书应该怎么写?
2019/07/15 职场文书
解决IDEA翻译插件Translation报错更新TTK失败不能使用
2022/04/24 Python