在js使用过程中,parseInt是一个比较常用的函数,而不同于parseFloat,parseInt还有第二个参数,用于指定解析为int类型时的进制,例如parseInt('100',10)就是将字符串‘100’按照10进制解析为int类型,结果是100;parseInt('100',2)就是按照2进制转换为int类型,结果为4。

在了解parseInt按指定进制转换int类型时,我们会发现一个很有趣的规律:在parseInt('100',10)的结果100中,我们会发现,结果100是进制“10”的2次方,parseInt('100',2)的结果4,是进制“2”的2次方。那么我们来改变一下,会发现parseInt('10000',3)的结果是81,而81是3的4次方;同理,parseInt('10000',2)的结果为16,16是2的4次方。

先不说其中的原理,我们直接来总结规律,parse(X,Y)=Z这一计算结果中,当X为10的N次方时,Y的N次方=Z。说的通俗一点,当我们要计算一个数字的N次方时,例如5的7次方,我们不需要写成5*5*5*5*5*5*5,可以直接写成parseInt(10000000,5),这里第一个参数我没有用字符串,因为没必要,parseInt不一定要用于解析字符串,这里我们并不需要写成字符串。

当然,如标题所言,这只是一个鸡肋的小技巧,因为js本身的内置Math对象中,提供了计算次方数的函数Math.pow,我们完全也可以写成Math.pow(5,7),本文更多的是希望通过这个小技巧,来告诉大家可以在学习js的过程中,扩展自己的思路,多发现各种函数的一些特别的用法,也许在什么时候,就会发现一些真正实用的小技巧。

鸡肋小技巧:js中用parseInt实现N次方的计算相关推荐

  1. 掌握这2个小技巧,让你轻松学会手机拍照计算数量

    你们有没有过计数的烦恼呢?像是那些在工地上班,或是从事仓库管理员的小伙伴,难免时常需要盘点货物数量,如果少还好,多的话则是一件非常头疼的事情,例如数一半忘记数到哪里了,或是中途被其它事情打断,导致需要 ...

  2. 抄袭一些别人工作中的小技巧

    1-类型强制转换 1.1 字符串转整形 '32' * 1 // 32 'ds' * 1 // NaN null * 1 // 0 undefined * 1 // NaN 或者 + '123' // ...

  3. js、jquery实用小技巧集合

    Tip16:JS的定时器 JS 中有两种定时器,setTimeout('fn', t) 和 setInterval('fn', t),'fn'指的是定时执行的方法名,字符串类型. setTimeout ...

  4. js if判断多个条件_JS条件判断小技巧(一)

    经常code review,我发现JS newbie很容易写出一堆冗长的代码.今天就列几个比较常见的"解决之道",看看如何减少JS里的条件判断. 提前返回,少用if...else ...

  5. web开发常用js功能性小技巧(转)

    web开发常用js功能性小技巧 -------------------------------------------------------------------------------- < ...

  6. 前端笔记-js文件首行添加;号(前端小技巧)

    这里记录一个前端的小技巧: 一般来说,我们自己写js代码,都会在首行添加";"号 原因是html加载js,如果有多个,那么这些js文件会被合并. 当某个js文件,尾巴没有 &quo ...

  7. 不用AJAX实现前台JS调用后台C#方法(小技巧)

    纯属小技巧,高手见笑了. 一提到如何在前台JS调用后台C#方法,AJAX成为了必然的想法. 只是实现的细节采用AJAX 1.0或者AjaxPro的区别. 其实如果不用AJAX,我们也能够很方便地利用J ...

  8. 你不知道的十个 JS 小技巧

    总结了一些开发常用的 JS 小技巧,让你的代码更优雅! 1. 使用 const 定义 在开发中不要过度声明变量,尽量使用表达式和链式调用形式.然后一般能用 const 就不要用 let .这种模式写多 ...

  9. 嫌JS写得不够好?我教你啊!五个小技巧

    很多新手写Js的时候只把功能做到了,却很少去考虑关于性能效率方面的事情,这是不可取的.我们应该习惯性地关注一下效率,因为你写的代码不可能永远只跑在性能还不错的设备上. 怎么提高?我教你啊!这里有五个小 ...

最新文章

  1. Oracle排序排除null,oracle 排序(中文,null的处理)
  2. PHP机器学习库php-ml的简单测试和使用
  3. how to handdraw a web UI for applications? Figma
  4. python自动获取天气_用python获取天气数据,并作定时播报
  5. matlab矢量角度,MATLAB矢量,角度,图
  6. python0b1011_1011 A+B 和 C (15分)Python参考答案
  7. English trip EM2-LP-2A Around the world Teacher:Taylor
  8. C++构造函数初始化列表与赋值
  9. OpenCV图像预处理常用函数及流程
  10. 学画画软件app推荐_绘画APP推荐|很全的学画画的APP推荐
  11. 王二 设计模式读书笔记
  12. vscode 怎么设置背景图片
  13. java 内存 监控_监控JVM内存使用情况
  14. win10进不了系统怎么强制进安全模式
  15. js里双重否定的作用
  16. 2018面试的-5分钟自我介绍建议
  17. 剑侠情缘手游服务器bug修复,剑侠情缘手游因BUG大回档 摆摊功能依然受影响
  18. 群联MPALL(Rel) 7F V5.03.0A-DL07量产工具 PS2251-07(PS2307)
  19. 【VsCode】如何使用VsCode中的代码片段快速输入常用代码(太实用了,有图,有示例)
  20. SD卡WAV音乐播放器(quartus11.0)(FAT32)(DE2-115)

热门文章

  1. 【日语】标准日本语动词大全
  2. 常微分方程式の解法(python)
  3. vue 增加键盘按钮事件
  4. H3C 光模块产品及维护介绍
  5. GIS开发入坑(三)--QGIS制作行政区划及背景图层
  6. 如何高效的使用Mac?Mac电脑小白教程
  7. 数据库 Filedsn(文件dsn)连接小问题
  8. 创建一个考试管理系统
  9. 图像显示的 flickering
  10. 为什么有的测试员路越走越窄?原因在这里