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 相关文章推荐
FireFox下XML对象转化成字符串的解决方法
Dec 09 Javascript
浅谈关于JavaScript的语言特性分析
Apr 11 Javascript
JS实现QQ图片一闪一闪的效果小例子
Jul 31 Javascript
angular简介和其特点介绍
Jan 29 Javascript
基于jQuery实现的QQ表情插件
Aug 25 Javascript
分享有关jQuery中animate、slide、fade等动画的连续触发、滞后反复执行的bug
Jan 10 Javascript
JavaScript中数组的22种方法必学(推荐)
Jul 20 Javascript
jQuery事件_动力节点Java学院整理
Jul 05 jQuery
去掉vue 中的代码规范检测两种方法(Eslint验证)
Mar 21 Javascript
jquery获取并修改触发事件的DOM元素示例【基于target 属性】
Oct 10 jQuery
JS一分钟在github+Jekyll的博客中添加访问量功能的实现
Apr 03 Javascript
node.js使用express-fileupload中间件实现文件上传
Jul 16 Javascript
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编程中八种常见的文件操作方式
2006/11/19 PHP
PHP循环语句笔记(foreach,list)
2011/11/29 PHP
php判断手机访问还是电脑访问示例分享
2014/01/20 PHP
php调用google接口生成二维码示例
2014/04/28 PHP
php中数字、字符与对象判断函数用法实例
2014/11/26 PHP
使用PHPExcel导出Excel表
2018/09/08 PHP
php实现网页上一页下一页翻页过程详解
2019/06/28 PHP
在html页面上拖放移动标签
2010/01/08 Javascript
javascript 自动填写表单的实现方法
2010/04/09 Javascript
javascript 函数声明与函数表达式的区别介绍
2013/10/05 Javascript
jQuery 快速结束当前正在执行的动画
2013/11/20 Javascript
遍历DOM对象内的元素属性示例代码
2014/02/08 Javascript
js中数组排序sort方法的原理分析
2014/11/20 Javascript
基于JS代码实现实时显示系统时间
2016/06/16 Javascript
js编写一个简单的产品放大效果代码
2016/06/27 Javascript
JavaScript“尽快失败”的原则实例详解
2016/10/08 Javascript
Js动态设置rem来实现移动端字体的自适应代码
2016/10/14 Javascript
nodejs中密码加密处理操作详解
2018/03/20 NodeJs
js replace 全局替换的操作方法
2018/06/12 Javascript
vue-cli webpack 引入swiper的操作方法
2018/09/15 Javascript
Python实现将Excel转换成为image的方法
2018/10/23 Python
python实现学员管理系统
2019/02/26 Python
pytorch:实现简单的GAN示例(MNIST数据集)
2020/01/10 Python
Python建造者模式案例运行原理解析
2020/06/29 Python
Python虚拟环境virtualenv创建及使用过程图解
2020/12/08 Python
python3中for循环踩过的坑记录
2020/12/14 Python
CSS中越界问题的经典解决方案【推荐】
2016/04/19 HTML / CSS
5分钟实现Canvas鼠标跟随动画背景
2019/11/18 HTML / CSS
Stuart Weitzman美国官网:美国奢华鞋履品牌
2016/08/18 全球购物
美国在线纱线商店:Darn Good Yarn
2019/03/20 全球购物
机电一体化专业应届生求职信
2013/11/27 职场文书
最新的互联网创业计划书
2014/01/10 职场文书
25岁生日感言
2014/01/13 职场文书
大学生赌博检讨书
2014/09/22 职场文书
Elasticsearch 批量操作
2022/04/19 Python
HTML5中的DOCUMENT.VISIBILITYSTATE属性详解
2023/05/07 HTML / CSS