黑马程序员技术交流社区

标题: 【面试题】map&parseInt [打印本页]

作者: 爱编码的J    时间: 2021-3-28 17:15
标题: 【面试题】map&parseInt
["1", "2", "3"].map(parseInt) 运行结果是什么,并写下分析过程

结果:[1, NaN, NaN]
  过程:使用map()时会把对应内容都遍历一遍,那么在遍历的过程中parseInt会处理数组["1", "2", "3"],那么根据parseInt(string,radix)的特性,在map遍历到"1"时,执行parseInt("1",0) => 当radix为0时,意味着以10为基数进行进制转换,"1"在十进制里就是1,自然第一个输出的就是1; map()遍历到"2"时,执行parseInt("2",1) => 意味着以1为基数进行转换,那么在此过程中不会出现大于1的数字,所以无法解析,输出NaN;同理,在遍历到"3"时,因为是parseInt("3", 2) => 以2为基数,进行二进制,那么二进制中不存在大于等于2的数,所以无法解析,输出NaN







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2