分析语法性能,map和parseInt
1.map遍历
map()方法返回一个由原数组中的每个元素调用一个指定方法后的返回值组成的新数组。
备注:map的回调函数中支持return返回值;return的是啥,相当于把数组中的这一项变为啥(并不影响原来的数组,只是相当于把原数组克隆一份,把克隆的这一份的数组中的对应项改变了)
map语法有三个参数(item,index,array)item当前值,index当前索引,array当前数组
parseInt() 函数解析字符串并返回整数。包含两个参数,parseInt(string,radix)
radix:可选。代表要使用的数字系统的数字(从 2 到 36)。
['1', '2', '3'].map(parseInt)返回结果
['1', '2', '3'].map(parseInt)=['1', '2', '3'].map(return parseInt(item,index))
返回结果[parseInt(1,0),parseInt(2,1),parseInt(3,2)]
真正的答案是[1, NaN, NaN]。
- parseInt('1', 0) //radix为0时,且string参数不以“0x”和“0”开头时,按照10为基数处理。这个时候返回1
- parseInt('2', 1) //基数为1(1进制)表示的数中,最大值小于2,所以无法解析,返回NaN
- parseInt('3', 2) //基数为2(2进制)表示的数中,最大值小于3,所以无法解析,返回NaN