['1','2','3'].map(parseInt)
首先整个题目考校的是两个函数,和一个字符串转数字的概念
- 数组的
map
函数,接受三个参数,当前值,当前索引,当前数组。 -
parseInt接受两个参数,需要转换的字符串,基数(基数取值范围2~36)
var new_array = arr.map(function callback(currentValue, index, array) { // Return element for new_array }) parseInt(string, radix)
-
根据上面的两个函数的解释,我们可以发现实际上,上面的
['1','2','3'].map(parseInt)
其实就是等价于下面的代码。['1','2','3'].map((item, index) => { return parseInt(item, index) }) // parseInt('1', 0) 1 // parseInt('2', 1) NaN // parseInt('3', 2) NaN
-
如果我们需要返回1,2,3需要怎么办?
function parseIntFun(item) { return parseInt(item, 10) } ['1','2','3'].map(parseIntFun) // parseInt('1', 10) 1 // parseInt('2', 10) 2 // parseInt('3', 10) 3
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。