parseInt

106 阅读1分钟

关于此类面试题的解析

let arr = [1, 2, 3, 4];
arr = arr.map(parseInt);
console.log(arr);

1、parseInt([value]):把VALUE转换为数字,要求VALUE是字符串(不是字符串先默认转换为字符串),从字符串左边开始查找,找到有效数字字符转换为数字(遇到一个非有效数字字符,则停止查找) 2、parseInt([value],[radix]):首先[VALUE]是这个字符串,他是把这个值看做[RADIX]这个进制,然后最后再转为10进制的数字

//parseInt(1,0)   ->1
//parseInt(2,1)   ->NaN
//parseInt(3,2)   ->NaN
//parseInt(4,3)   ->NaN

例题1 parseInt('2AF5',16);=>把'2AF5'当做16进制,最后转换为10进制

5*16^0+15*16^1+10*16^2+2*16^3=100997

例题2 parseInt('72.45',8)

2*8^0+7*8^-1+5*8^-2=58.578125