版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
(1)写出以下的打印结果:
var str = '123hello';
console.log(typeof(str++)); // number
console.log(str); // NaN
(2)写出以下打印结果:
['1','3','10'].map(parseInt); // 打印结果:[1, NaN, 2]
上面的结果我很意外也很奇怪为什么是这个结果呢?下面我们先来看下 map函数 和 parstInt 函数 。
(2-1)map() 函数:
- 一般我们会在map里面传入一个function ,里面可以传入一个参数。
['1','3','10'].map((item)=>{
console.log(item); // 打印结果:1,3,10
});
- 也可以传入两个参数:
['1','3','10'].map((item,idx)=>{
console.log(item+'----'+idx);
});
// 打印结果:
1------0
3-------1
10 ------2
(2-2)parseInt() 函数
parseInt() 函数可解析一个字符串,并返回一个整数。
radix 参数在 2 - 36 之间的会返回NaN.
所以:栗子:
['1','3','10'].map(parseInt); // 打印结果:[1, NaN, 2]
["1", "2", "3"].map(parseInt) // 打印结果 :[ 1, NaN, NaN ]
---------完。