javascript 函数参数限制说明


Posted in Javascript onNovember 19, 2010
测试结果:

safari 下是65535个.即 ushort 来存储(2字节 16个1).更多的则忽略.

其他浏览器 至少是int.MaxValue .据说FireFox 甚至是用long 来维护 实参数.
其他浏览器 也许是int 或者可能是uint .这个就不管了. 毕竟我们知道了瓶颈 在 65535.

基于 以上基础.可以在 连接数组时 考虑优先采用 [].push.apply(a,b) 代替 a=a.concat(b); 
我们只需要注意 对于safari 来说 b的length不能超过65535就ok啦.  
concat 的 问题在于 产生的新数组 并 遍历 a 和 b 两个数组,再依次把a和b的元素放入.

测试代码:
var count = 100000, a = [1,2,3], b = [4,5,6], r = [], i, d; 

d = new Date ; 
for (i = count; i-- ;){ 
     a.concat(b); 
} 
r[0] = new Date - d; 

d = new Date ; 
for (i = count; i-- ;){ 
     r.push.apply(a,b); 
     //a = [1,2,3] ; 
} 
r[1] = new Date - d; 

alert(r);

可以得出结论 即使是ie6 chrome2 safari 3 firefox 2这样古老的浏览器  push也是完胜的,个别浏览器 即使去掉 //a = [1,2,3] ; 注释部分. 居然效率也是胜过 concat的. 如chrome7 dev  和safari 5.
Javascript 相关文章推荐
基于jquery的自定义鼠标提示效果 jquery.toolTip
Nov 14 Javascript
深入理解JavaScript系列(4) 立即调用的函数表达式
Jan 15 Javascript
JS 实现导航栏悬停效果
Sep 23 Javascript
JavaScript使用cookie记录临时访客信息的方法
Apr 07 Javascript
JavaScript实现Iterator模式实例分析
Jun 09 Javascript
详解WordPress开发中get_current_screen()函数的使用
Jan 11 Javascript
jquery实现可旋转可拖拽的文字效果代码
Jan 27 Javascript
Vue利用History记录上一页面的数据方法实例
Nov 02 Javascript
JS实现简单的点赞与踩功能示例
Dec 05 Javascript
js实现一个页面多个倒计时的3种方法
Feb 25 Javascript
你不知道的 TypeScript 高级类型(小结)
Aug 28 Javascript
js实现点击按钮随机生成背景颜色
Sep 05 Javascript
Javascript的并行运算实现代码
Nov 19 #Javascript
js里的prototype使用示例
Nov 19 #Javascript
Google 静态地图API实现代码
Nov 19 #Javascript
javascript 窗口加载蒙板 内嵌网页内容
Nov 19 #Javascript
JS运行耗时操作的延时显示方法
Nov 19 #Javascript
function foo的原型与prototype属性解惑
Nov 19 #Javascript
高亮显示web页表格行的javascript代码
Nov 19 #Javascript
You might like
浅谈php和.net的区别
2014/09/28 PHP
详解php比较操作符的安全问题
2015/12/03 PHP
PHP控制前台弹出对话框的实现方法
2016/08/21 PHP
PHP聚合式迭代器接口IteratorAggregate用法分析
2017/12/28 PHP
SUN的《AJAX与J2EE》全文译了
2007/02/23 Javascript
关于JavaScript的一些看法
2009/05/27 Javascript
javascript中注册和移除事件的4种方式
2013/03/20 Javascript
js数组转json并在后台对其解析具体实现
2013/11/20 Javascript
JavaScript中奇葩的假值示例应用
2014/03/11 Javascript
jquery分页对象使用示例
2014/04/01 Javascript
告诉你什么是javascript的回调函数
2014/09/04 Javascript
JQuery.get提交页面不跳转的解决方法
2015/01/13 Javascript
jquery实现公告翻滚效果
2015/02/27 Javascript
JS获取图片高度宽度的方法分享
2015/04/17 Javascript
JavaScript判断FileUpload控件上传文件类型
2015/09/28 Javascript
基于jQuery实现简单的折叠菜单效果
2015/11/23 Javascript
JS仿QQ好友列表展开、收缩功能(第二篇)
2017/07/07 Javascript
基于Vue实现页面切换左右滑动效果
2020/06/29 Javascript
详解HTML5 使用video标签实现选择摄像头功能
2017/10/25 Javascript
JS中超越现实的匿名函数用法实例分析
2019/06/21 Javascript
layUI实现前端分页和后端分页
2019/07/27 Javascript
react 原生实现头像滚动播放的示例
2020/04/21 Javascript
Python数据操作方法封装类实例
2017/06/23 Python
英国在线发型和美容产品商店:Beauty Cutie
2019/04/27 全球购物
乡镇庆八一活动方案
2014/02/02 职场文书
护理学应聘自荐书范文
2014/02/05 职场文书
学前班评语大全
2014/05/04 职场文书
松材线虫病防治方案
2014/06/15 职场文书
党支部特色活动方案
2014/08/20 职场文书
2014年党员整改措施范文
2014/09/21 职场文书
先进党员事迹材料
2014/12/24 职场文书
2015年复活节活动总结
2015/02/27 职场文书
学术会议开幕词
2016/03/03 职场文书
自从在 IDEA 中用了热部署神器 JRebel 之后,开发效率提升了 10(真棒)
2021/06/26 Java/Android
vue如何实现关闭对话框后刷新列表
2022/04/08 Vue.js
oracle设置密码复杂度及设置超时退出的功能
2022/06/28 Oracle