JS中parseInt()和map()用法分析


Posted in Javascript onDecember 16, 2016

本文实例讲述了JS中parseInt()和map()用法。分享给大家供大家参考,具体如下:

parseInt()的几个例子

var b = parseInt("01");
alert("b="+b);
var c = parseInt("09/08/2009");
alert("c="+c);

结果:b=1,c=0

parseInt()用来解析字符串,返回整数,有几个特点:

1.无视被解析字符串最前和最后的空格,即:" 111 "和"111"是一样的

2.正规格式是parseInt(string,radix)

第一个参数是被解析的字符串,第二个参数是进制(可不些)

第二个参数的特点:

①如果radix省略或为0,则按默认进制(十进制)进行解析

②radix为2~36之间的整数,如果在这个范围之外,返回NaN

③string的首字符为0,则默认解析为8进制。string首字符为0x(0X)则默认解析为16进制。其他情况默认为10进制。

④最好加上第二个参数,不然即使碰到首字符为0,应该以8进制方式进行,在某些浏览器下,如ff也会按10进制进行

3.解析从第一个可以解析的字符开始,到第一个不能解析的字符(如空格,标点符号等)结束。后面的字符不再解析。如果第一个字符就不可以解析,则返回NaN。

回到此题来分析

b的首字母是0,按8进制解析后面的数值,也就是8进制的1。自然返回值为1。<br>c的首字母是0,按8进制解析后面的数值,但是第二个字符9已经不是8进制数,也就是9是第一个不能解析的字符,parseInt("09/08/2009")相当于parseInt("0"),自然返回值是0<br>注:8也不是8进制数,最大到7

变形:

var c = parseInt("0119/08/2009");
alert("c="+c);

分析:

相当于parseInt("011"),0*8^2+1*8^1+1*8^0=0+8+1=9,输出结果为c=9
parseFloat()和parseInt()

parseInt()可以带参数,指定二进制、八进制或者十六进制(默认十进制),而parseFloat()不带参数,不能解析八进制、十六进制数,就只能按十进制进行。

再来看parseInt()和.map()结合的例子

["1", "2", "3"].map(parseInt) 返回值又是多少呢

map方法

array1.map(callbackfn[, thisArg])

对数组的每个元素,调用定义的回调函数,返回一个数组包含结果

参数:

array1 必须。一个数组对象
callbackfn 必须。最多接受三个参数(数组元素的值,数组元素的索引,包含该元素的数组对象)的回调函数
thisArg 可选。

即原例子相当于

[parseInt("1",0),parseInt("2",1),parseInt("3",2)]

分析:

1按十进制转换输出1
1不在2~36之间,输出NaN
字符串”3“里面没有合法的二进制数,输出NaN
所以最后结果是[1,NaN,NaN]

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
nicejforms——美化表单不用愁
Feb 20 Javascript
使用Jquery来实现可以输入值的下拉选单 雏型
Dec 06 Javascript
js实现连个数字相加而不是拼接的方法
Feb 23 Javascript
javascript定义变量时有var和没有var的区别探讨
Jul 21 Javascript
Jquery实现由下向上展开效果的例子
Dec 08 Javascript
javascript实现显示和隐藏div方法汇总
Aug 14 Javascript
jquery实现超简洁的TAB选项卡效果代码
Aug 28 Javascript
全面解析JavaScript中“&amp;&amp;”和“||”操作符(总结篇)
Jul 18 Javascript
javascript函数中的3个高级技巧
Sep 22 Javascript
实例分析JS与Node.js中的事件循环
Dec 12 Javascript
React Native中Mobx的使用方法详解
Dec 04 Javascript
js实现贪吃蛇游戏 canvas绘制地图
Sep 09 Javascript
HTML5canvas 绘制一个圆环形的进度表示实例
Dec 16 #Javascript
JS数字千分位格式化实现方法总结
Dec 16 #Javascript
jquery插件锦集【推荐】
Dec 16 #Javascript
jQuery Easyui 下拉树组件combotree
Dec 16 #Javascript
JS实现字符串转驼峰格式的方法
Dec 16 #Javascript
详解js数组的完全随机排列算法
Dec 16 #Javascript
JS返回只包含数字类型的数组实例分析
Dec 16 #Javascript
You might like
php中的时间处理
2006/10/09 PHP
不用数据库的多用户文件自由上传投票系统(3)
2006/10/09 PHP
php实现首页链接查询 友情链接检查的代码
2010/01/05 PHP
php 格式化数字的时候注意数字的范围
2010/04/13 PHP
测试PHP连接MYSQL成功与否的代码
2013/08/16 PHP
非常实用的php弹出错误警告函数扩展性强
2014/01/17 PHP
PHP中使用register_shutdown_function函数截获fatal error示例
2015/04/21 PHP
PHP中类型转换 ,常量,系统常量,魔术常量的详解
2017/10/26 PHP
PHP排序算法之简单选择排序(Simple Selection Sort)实例分析
2018/04/20 PHP
javascript实现点击按钮弹出一个可关闭层窗口同时网页背景变灰的方法
2015/05/13 Javascript
vue自定义指令实现v-tap插件
2016/11/03 Javascript
Angular企业级开发——MVC之控制器详解
2017/02/20 Javascript
angularjs实现过滤并替换关键字小功能
2017/09/19 Javascript
phantomjs导出html到pdf的方法总结
2017/10/19 Javascript
JavaScript实现三级级联特效
2017/11/05 Javascript
Vue-router 中hash模式和history模式的区别
2018/07/24 Javascript
vue实现后台管理权限系统及顶栏三级菜单显示功能
2019/06/19 Javascript
express如何解决ajax跨域访问session失效问题详解
2019/06/20 Javascript
Vue实现点击显示不同图片的效果
2019/08/10 Javascript
Vue中通过Vue.extend动态创建实例的方法
2019/08/13 Javascript
nuxt.js添加环境变量,区分项目打包环境操作
2020/11/06 Javascript
Vue router安装及使用方法解析
2020/12/02 Vue.js
python BeautifulSoup使用方法详解
2013/11/21 Python
Python类定义和类继承详解
2015/05/08 Python
举例讲解Python中字典的合并值相加与异或对比
2016/06/04 Python
Python将多个list合并为1个list的方法
2018/06/27 Python
python异步实现定时任务和周期任务的方法
2019/06/29 Python
Django框架模型简单介绍与使用分析
2019/07/18 Python
伦敦时尚生活的缩影:LN-CC
2017/01/24 全球购物
一套VC试题
2015/01/23 面试题
致垒球运动员加油稿
2014/02/16 职场文书
珠宝店促销方案
2014/03/21 职场文书
目标管理责任书
2014/04/15 职场文书
环保建议书300字
2014/05/14 职场文书
初中运动会前导词
2015/07/20 职场文书
Nginx跨域问题解析与解决
2022/08/05 Servers