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 相关文章推荐
Iframe thickbox2.0使用的方法
Mar 05 Javascript
JavaScript 程序编码规范
Nov 23 Javascript
Jquery中的层次选择器与find()的区别示例介绍
Feb 20 Javascript
js中函数调用的两种常用方法使用介绍
Jul 17 Javascript
JS实现IE状态栏文字缩放效果代码
Oct 24 Javascript
详解JavaScript的回调函数
Nov 20 Javascript
让编辑器支持word复制黏贴、截屏的js代码
Oct 17 Javascript
微信小程序 后台https域名绑定和免费的https证书申请详解
Nov 10 Javascript
jquery删除数组中重复元素
Dec 05 Javascript
利用js来实现缩略语列表、文献来源链接和快捷键列表
Dec 16 Javascript
angular2路由切换改变页面title的示例代码
Aug 23 Javascript
vue-loader中引入模板预处理器的实现
Sep 04 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
ie与session丢失(新窗口cookie丢失)实测及解决方案
2013/07/15 PHP
php中的常用魔术方法总结
2013/08/02 PHP
php curl简单采集图片生成base64编码(并附curl函数参数说明)
2019/02/15 PHP
Avengerls vs KG BO3 第三场2.18
2021/03/10 DOTA
网页中实现浏览器的最大,最小化和关闭按钮
2007/03/12 Javascript
JQuery自适应窗口大小导航菜单附源码下载
2015/09/01 Javascript
每天一篇javascript学习小结(Date对象)
2015/11/13 Javascript
JS实现1000以内被3或5整除的数字之和
2016/02/18 Javascript
ES6新特征数字、数组、字符串
2016/10/01 Javascript
sea.js常用的api简易文档
2016/11/15 Javascript
webuploader模态框ueditor显示问题解决方法
2016/12/27 Javascript
vue.js实现点击后动态添加class及删除同级class的实现代码
2018/04/04 Javascript
vue 组件高级用法实例详解
2018/04/11 Javascript
原生javascript的ajax请求及后台PHP响应操作示例
2020/02/24 Javascript
vue prop传值类型检验方式
2020/07/30 Javascript
js实现复制粘贴的两种方法
2020/12/04 Javascript
[57:18]DOTA2上海特级锦标赛主赛事日 - 1 败者组第一轮#3VP VS VG
2016/03/03 DOTA
Python安装第三方库及常见问题处理方法汇总
2016/09/13 Python
python 系统调用的实例详解
2017/07/11 Python
深入理解Python中的*重复运算符
2017/10/28 Python
Python学习笔记之open()函数打开文件路径报错问题
2018/04/28 Python
python实现词法分析器
2019/01/31 Python
使用python计算三角形的斜边例子
2020/04/15 Python
python的Jenkins接口调用方式
2020/05/12 Python
利用Pycharm + Django搭建一个简单Python Web项目的步骤
2020/10/22 Python
J.Crew官网:美国知名休闲服装品牌
2017/05/19 全球购物
北京银河万佳Java面试题
2012/03/21 面试题
我们的节日清明节活动方案
2014/03/05 职场文书
网络技术专业求职信
2014/05/02 职场文书
党员承诺践诺书
2014/05/20 职场文书
社会实践活动报告
2015/02/05 职场文书
挂职个人工作总结
2015/03/05 职场文书
2015年施工员工作总结范文
2015/04/20 职场文书
电话营销开场白
2015/05/29 职场文书
法院执行局工作总结
2015/08/11 职场文书
nginx实现发布静态资源的方法
2021/03/31 Servers