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里的条件判断
Feb 27 Javascript
js 操作符实例代码
Oct 24 Javascript
容易被忽略的JS脚本特性
Sep 13 Javascript
JQuery伸缩导航练习示例
Nov 13 Javascript
jquery插件lazyload.js延迟加载图片的使用方法
Feb 19 Javascript
js获取json元素数量的方法
Jan 27 Javascript
AspNet中使用JQuery boxy插件的确认框
May 20 Javascript
jQuery实现高亮显示网页关键词的方法
Aug 07 Javascript
JS实现添加,替换,删除节点元素的方法
Jun 30 Javascript
JS公共小方法之判断对象是否为domElement的实例
Nov 25 Javascript
使用gulp构建前端自动化的方法示例
Dec 25 Javascript
基于Vue CSR的微前端实现方案实践
May 27 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
防止本地用户用fsockopen DDOS攻击对策
2011/11/02 PHP
php开发微信支付获取用户地址
2015/10/04 PHP
Yii 2中的load()和save()示例详解
2017/08/03 PHP
laravel 自定义常量的两种方案
2019/10/14 PHP
PHP数组对象与Json转换操作实例分析
2019/10/22 PHP
实例化php类时传参的方法分析
2020/06/05 PHP
PHP编程一定要改掉的5个不良习惯
2020/09/18 PHP
jQuery 使用手册(七)
2009/09/23 Javascript
jQuery 全选/反选以及单击行改变背景色实例
2013/07/02 Javascript
js string 转 int 注意的问题小结
2013/08/15 Javascript
jquery eval解析JSON中的注意点介绍
2013/08/23 Javascript
setInterval()和setTimeout()的用法和区别示例介绍
2013/11/17 Javascript
jQuery中bind,live,delegate与one方法的用法及区别解析
2013/12/30 Javascript
JavaScript实现在数组中查找不同顺序排列的字符串
2014/09/26 Javascript
Javascript模块化编程详解
2014/12/01 Javascript
node.js中的fs.readlink方法使用说明
2014/12/17 Javascript
两种方法解决javascript url post 特殊字符转义 + & #
2016/04/13 Javascript
jquery实现左右无缝轮播图
2020/07/31 Javascript
每个程序员都需要学习 JavaScript 的7个理由小结
2016/09/03 Javascript
Bootstrap实现渐变顶部固定自适应导航栏
2020/08/27 Javascript
jquery实现图片放大点击切换
2017/06/06 jQuery
vue 怎么创建组件及组件使用方法
2017/07/27 Javascript
JS把字符串格式的时间转换成几秒前、几分钟前、几小时前、几天前等格式
2019/07/10 Javascript
javascript 对象 与 prototype 原型用法实例分析
2019/11/11 Javascript
three.js 将图片马赛克化的示例代码
2020/07/31 Javascript
Python、PyCharm安装及使用方法(Mac版)详解
2017/04/28 Python
Opencv实现抠图背景图替换功能
2019/05/21 Python
python使用协程实现并发操作的方法详解
2019/12/27 Python
python 异步async库的使用说明
2020/05/04 Python
Keras搭建自编码器操作
2020/07/03 Python
python实现磁盘日志清理的示例
2020/11/05 Python
阻止移动设备(手机、pad)浏览器双击放大网页的方法
2014/06/03 HTML / CSS
英国高街电视:High Street TV
2018/05/22 全球购物
英国顶级足球鞋的领先零售商:Lovell Soccer
2019/08/27 全球购物
法律工作求职自荐信
2013/10/31 职场文书
浅谈Mysql多表连接查询的执行细节
2021/04/24 MySQL