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 相关文章推荐
JS 时间显示效果代码
Aug 23 Javascript
js 弹出菜单/窗口效果
Oct 30 Javascript
AngularJS中使用HTML5手机摄像头拍照
Feb 22 Javascript
微信小程序 Template详解及简单实例
Jan 05 Javascript
使用get方式提交表单在地址栏里面不显示提交信息
Feb 21 Javascript
VueJS事件处理器v-on的使用方法
Sep 27 Javascript
jquery使用iscorll实现上拉、下拉加载刷新
Oct 26 jQuery
ES6 javascript的异步操作实例详解
Oct 30 Javascript
vue .sync修饰符的使用详解
Jun 15 Javascript
JavaScript生成一个不重复的ID的方法示例
Sep 16 Javascript
js 对象使用的小技巧实例分析
Nov 08 Javascript
JavaScript 自定义html元素鼠标右键菜单功能
Dec 02 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下通过IP获取地理位置的代码(小偷程序)
2011/06/09 PHP
如何使用PHP实现javascript的escape和unescape函数
2013/06/29 PHP
服务器迁移php版本不同可能诱发的问题
2015/12/22 PHP
Smarty分页实现方法完整实例
2016/05/11 PHP
Laravel如何同时连接多个数据库详解
2019/08/13 PHP
js实现点小图看大图效果的思路及示例代码
2013/10/28 Javascript
jquery数组之存放checkbox全选值示例代码
2013/12/20 Javascript
node.js中的fs.existsSync方法使用说明
2014/12/17 Javascript
JavaScript获取表格(table)当前行的值、删除行、增加行
2015/07/03 Javascript
JS+CSS实现表格高亮的方法
2015/08/05 Javascript
jQuery实现MSN中文网滑动Tab菜单效果代码
2015/09/09 Javascript
GitHub上一些实用的JavaScript的文件压缩解压缩库推荐
2016/03/13 Javascript
js 实现数值的千分位及保存小数方法(推荐)
2016/08/01 Javascript
深入理解js generator数据类型
2016/08/16 Javascript
使用jquery.qrcode.js生成二维码插件
2016/10/17 Javascript
原生js实现可拖动的登录框效果
2017/01/21 Javascript
js图片加载效果实例代码(延迟加载+瀑布流加载)
2017/05/12 Javascript
IScroll那些事_当内容不足时下拉刷新的解决方法
2017/07/18 Javascript
nodejs实现的连接MySQL数据库功能示例
2018/01/25 NodeJs
Vue中使用Sortable的示例代码
2018/04/07 Javascript
iview实现select tree树形下拉框的示例代码
2018/12/21 Javascript
Element Card 卡片的具体使用
2020/07/26 Javascript
[48:32]VGJ.T vs Fnatic 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
python列表去重的二种方法
2014/02/14 Python
python判断字符串是否包含子字符串的方法
2015/03/24 Python
详解Python中__str__和__repr__方法的区别
2015/04/17 Python
Python 输入一个数字判断成绩分数等级的方法
2018/11/15 Python
Python 、Pycharm、Anaconda三者的区别与联系、安装过程及注意事项
2019/10/11 Python
tensorflow实现训练变量checkpoint的保存与读取
2020/02/10 Python
python求解汉诺塔游戏
2020/07/09 Python
青春寄语大全
2014/04/09 职场文书
《登鹳雀楼》教学反思
2014/04/09 职场文书
戒毒悔改检讨书
2014/09/21 职场文书
校运会广播稿
2015/08/19 职场文书
2016年党员干部公开承诺书
2016/03/24 职场文书
SpringCloud Function SpEL注入漏洞分析及环境搭建
2022/04/08 Java/Android