详解parseInt
详解parseInt
题目
let result = ['1', '2', '3'].map(parseInt)
console.log(result)
不用想结果也不会是1,2,3,不然就不会有这道题了,下面我们来剖析一下原理
原理
首先我们先将这段代码分解一下
['1', '2', '3'].map((val, index) => parseInt(val, index))
// 实际上的代码是这样的
parseInt('1', 0)
parseInt('2', 1)
parseInt('3', 2)
然后我们说一下parseInt这个方法的用法和参数
语法:parseInt(string, radix)
- 参数1:必须传入。被解析的字符串
- 参数2:可选。表示要解析的数字的基数。该值介于 2 ~ 36 之间(也就是多少进制)。
也就是说parseInt(‘1’, 0),第一个是字符串,第二个参数是多少进制,0是10进制,所以十进制的字符串’1’就是1;
parseInt(‘2’, 1),1进制会有2吗,不会,所以是NaN;
parseInt(‘3’, 2),2进制也不会出现3,所以也是NaN。
这样我们就能理解这段代码的打印结果了。
['1', '2', '3'].map((val, index) => parseInt(val, index))
// 实际上的代码是这样的
parseInt('1', 0)//1
parseInt('2', 1)//NaN
parseInt('3', 2)//NaN
详解parseInt相关推荐
- jQuery中getJSON跨域原理详解
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcytp28 jQuery中getJSON跨域原理详解 前几天我再开发一个叫 河蟹工 ...
- Hadoop学习之Mapreduce执行过程详解
一.MapReduce执行过程 MapReduce运行时,首先通过Map读取HDFS中的数据,然后经过拆分,将每个文件中的每行数据分拆成键值对,最后输出作为Reduce的输入,大体执行流程如下图所示: ...
- Java 集合类详解
0.参考文献 http://blog.csdn.net/liulin_good/article/details/6213815 1.java集合类图 1.1 1.2 上述类图中,实线边框的是实现类,比 ...
- c2064 项不会计算为接受0个参数的函数_【JS必知必会】高阶函数详解与实战
本文涵盖 前言 高级函数概念 函数作为参数的高阶函数 map filter reduce sort详解与实战 函数作为返回值的高阶函数 isType函数与add求和函数 如何自己创建高阶函数 前言 一 ...
- Stuts的Web.xml 详解
1 定义头和根元素 部署描述符文件就像所有XML文件一样,必须以一个XML头开始.这个头声明可以使用的XML版本并给出文件的字符编码. DOCYTPE声明必须立即出现在此头之后.这个声明告诉服务器适用 ...
- fileupload的回调方法_jQuery File Upload文件上传插件使用详解
本篇教程介绍了jQuery File Upload文件上传插件使用详解,希望阅读本篇文章以后大家有所收获,帮助大家对jQuery的理解更加深入. < jQuery File Upload 是一个 ...
- ViewPager 详解(三)---PagerTabStrip与PagerTitleStrip添加标题栏的异同
相关文章: 1.<ViewPager 详解(一)---基本入门> 2.<ViewPager 详解(二)---详解四大函数> 3.<ViewPager 详解(三)-- ...
- 网页性能管理详解:浅谈chrome-Timeline及window.requestAnimationFrame()方法
你遇到过性能很差的网页吗? 这种网页响应非常缓慢,占用大量的CPU和内存,浏览起来常常有卡顿,页面的动画效果也不流畅. 你会有什么反应?我猜想,大多数用户会关闭这个页面,改为访问其他网站.作为一个开发 ...
- php引入路径配置,require.js的路径配置和css的引入方法详解
这篇文章主要介绍了详解require.js配置路径的用法和css的引入,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 前端开发在近一两年发展的非常快,JavaScript作为主流的开发语言得到了前 ...
最新文章
- 网站推广专员浅析网站建设实用技巧助力网站推广优化
- CLR Via CSharp读书笔记(14):字符、字符串和文本处理
- C# ActionT和 FuncT委托
- AttributeError : module ‘enum‘ has no attribute ‘IntFlag‘
- 关于Web面试的基础知识点--Html+Css(四)
- 执行存储过程执行时,报ORA-01031权限不足
- 构建可网管的企业网络
- 分享Python入门经典基础题(day1)附完整答案
- Discuz收费插件模版合集包;discuz大部分插件下载地址;http://pan.baidu.com/s/1nt5hwU1
- NetCore EF 使用scaffold-dbcontext导致deps.json] does not exist的解决办法
- 证明费马最后定理的英国数学家,终获2016阿贝尔奖
- 基本表改变视图不改变为什么_为什么说10万本金以下穷人玩股票一般都会赔?不改变穷人思维,还不如退出股市...
- 服务器手机信息报警,广东肇庆110全面开通手机短信报警服务
- JAVASCRIPT精彩200例
- 算法 洗扑克牌(乱数排列)
- 《计算机应用基础》第04章在线测试,《计算机应用基础》在线测试.doc
- 成为一个CTO需要具备什么条件?
- 用Bibtex导出GB/T 7714等格式引用的方法
- 乐观复制算法-9.扩展乐观复制系统
- 数字化转型:留给企业的时间不多了!