相信大家在平时开发过程中都用过parseInt这个JS自带的方法吧,题主在没去参加某某公司的面试前我对于这个方法的印象还停留在小数取整的那步,我以为以后也不会有什么交集了,就这样了么 欧服考斯闹特 我去面试的这个公司给我上来一课 上来就是6页A4纸的题目 其中parseInt的计算题目就占了一页 很显然我没做出来,所以回来整理了一下 彻底弄懂了这个parseInt 敢不敢再让我写一次哈哈哈
parseInt函数的后背隐藏参数
@param {string} 就是个字符串哈哈哈
@param *{radix} 介于2-36之间的数
parseInt(string, radix)
radix介绍
相信大家都刷到过这个很经典的parseInt面试题
请说出['1', '2', '3'].map(parseInt)返回的结果 1, NAN, NAN
让我给他的radix加上就显而易见了
// map 有两个参数 item 和 index
1. parseInt('1', 0) // 1 因为radix没有指定或者为0默认是10进制
2. parseInt('2', 1) // NAN 1不在2~36直接 所以为NAN
3. parseInt('3', 2) // NAN 纳尼?2进制里包含3 赶紧NAN处理
OK 看了上面的例子我们也知道parseInt好像比我们想象中要复杂的很多 说到这里我相信我们还是一头雾水 换个参数还是不会 就比如我面试的哪家公司面试题 然后我找到一直大神给出的换算图 我好像发现了其中的奥妙
这样事情一下子变得简单起来了
哈哈哈哈哈哈 简单易懂 直接套公式 首位乘以radix的index次方相加
结束语
希望我们在这个寒冷的5月都可以找到好的工作 曙光就在前方 fighting!!!!!