javascript中的关于类型转换的性能优化


Posted in Javascript onDecember 14, 2010

1. 把数字转换成字符串,应用"" + 1,虽然看起来比较丑一点,但事实上这个效率是最高的,性能上来说:("" + ) > String() > .toString() > new String(),尽量使用编译时就能使用的内部操作要比运行时使用的用户操作要快。String()属于内部函数,所以速度很快,而.toString()要查询原型中的函数,所以速度逊色一些,new String()用于返回一个精确的副本。

2. 浮点数转换成整型,这个更容易出错,很多人喜欢使用parseInt(),其实parseInt()是用于将字符串转换成数字,而不是浮点数和整型之间的转换,我们应该使用Math.floor()或者Math.round()。另外,和第二节的对象查找中的问题不一样,Math是内部对象,所以Math.floor()其实并没有多少查询方法和调用的时间,速度是最快的。

3. 对于自定义的对象,如果定义了toString()方法来进行类型转换的话,推荐显式调用toString(),因为内部的操作在尝试所有可能性之后,会尝试对象的toString()方法尝试能否转化。

Javascript 相关文章推荐
JavaScript中的集合及效率
Jan 08 Javascript
jQuery实现单击按钮遮罩弹出对话框(仿天猫的删除对话框)
Apr 10 Javascript
PHP中使用微秒计算脚本执行时间例子
Nov 19 Javascript
JQuery自动触发事件的方法
Jun 13 Javascript
jQuery实现Meizu魅族官方网站的导航菜单效果
Sep 14 Javascript
angularjs ui-router中路由的二级嵌套
Mar 10 Javascript
JavaScript实现审核流程状态的动态显示进度条
Mar 15 Javascript
node.js利用mongoose获取mongodb数据的格式化问题详解
Oct 06 Javascript
原生JS实现 MUI导航栏透明渐变效果
Nov 07 Javascript
vue中eventbus被多次触发以及踩过的坑
Dec 02 Javascript
vue请求数据的三种方式
Mar 04 Javascript
Vue操作Storage本地化存储
Apr 29 Vue.js
JavaScript学习笔记之获取当前目录的实现代码
Dec 14 #Javascript
根据一段代码浅谈Javascript闭包
Dec 14 #Javascript
js保存当前路径(cookies记录)
Dec 14 #Javascript
利用JQuery的load函数动态加载其它页面的内容的实现代码
Dec 14 #Javascript
Jquery练习之表单验证实现代码
Dec 14 #Javascript
基于Jquery的淡入淡出的特效基础练习
Dec 13 #Javascript
Juqery Html(),append()等方法的Bug解决方法
Dec 13 #Javascript
You might like
php实现执行某一操作时弹出确认、取消对话框
2013/12/30 PHP
php使用strip_tags()去除html标签仍有空白的解决方法
2016/07/28 PHP
PHP让数组中有相同值的组成新的数组实例
2017/12/31 PHP
CI框架(CodeIgniter)实现的导入、导出数据操作示例
2018/05/24 PHP
ExtJS 2.0实用简明教程 之ExtJS版的Hello
2009/04/29 Javascript
JavaScript Tips 使用DocumentFragment加快DOM渲染速度
2010/06/28 Javascript
javascript实现div的拖动并调整大小类似qq空间个性编辑模块
2012/12/12 Javascript
jQuery bxCarousel实现图片滚动切换效果示例代码
2013/05/15 Javascript
SeaJS入门教程系列之完整示例(三)
2014/03/03 Javascript
jQuery插件实现带圆点的焦点图片轮播切换
2016/01/18 Javascript
JavaScript设计模式经典之命令模式
2016/02/24 Javascript
原生js实现百叶窗效果及原理介绍
2016/04/12 Javascript
JS组件系列之Bootstrap table表格组件神器【终结篇】
2016/05/10 Javascript
多种方式实现js图片预览
2016/12/12 Javascript
微信小程序商城项目之购物数量加减(3)
2017/04/17 Javascript
jquery轻量级数字动画插件countUp.js使用详解
2019/10/17 jQuery
详解vue路由
2020/08/05 Javascript
在nuxt中使用路由重定向的实例
2020/11/06 Javascript
[02:49]2014DOTA2电竞也是体育项目! 势要把荣誉带回中国!
2014/07/20 DOTA
Python类的专用方法实例分析
2015/01/09 Python
python3 模拟登录v2ex实例讲解
2017/07/13 Python
python+selenium实现自动化百度搜索关键词
2019/06/03 Python
python的几种矩阵相乘的公式详解
2019/07/10 Python
Python 读取 YUV(NV12) 视频文件实例
2019/12/09 Python
Python爬虫之App爬虫视频下载的实现
2020/12/08 Python
如何用python批量调整视频声音
2020/12/22 Python
CSS3教程:background-clip和background-origin
2008/10/17 HTML / CSS
HTML5 新事件 小结
2009/07/16 HTML / CSS
Daniel Wellington官方海外旗舰店:丹尼尔惠灵顿DW手表
2018/02/22 全球购物
高三毕业寄语
2014/04/10 职场文书
幼儿园大班评语大全
2014/04/17 职场文书
优秀驾驶员先进事迹材料
2014/05/04 职场文书
大学生就业求职信
2014/06/12 职场文书
2014年外联部工作总结
2014/11/17 职场文书
客服专员岗位职责
2015/02/10 职场文书
2016年社区党支部公开承诺书
2016/03/25 职场文书