这个话题的开启是看帖子的时候觉得可以记录一下。
简单记录,学习一下
数组清空----------这个话题先从我的凤凰组件库phoenix.array.js的当初设计整理一样。
/* 先看看prototype.js @version 1.6.0 */ Object.extend(Array.prototype,{ clear:function(){ this.length = 0; return this; } });
/* baidu tangram version 1.3.9 */ baidu.array.empty = function(source){ source.length = 0; }
当然可能有的人会从网上看到一些这样的做法
/* 类似赋值[] */ clean:function(source){ this.source = []; }
-------------- 2013-5-7 add splice
clean:function(arr){ arr.splice(0,arr.length); }
总结一下:
- 个人觉得从功能实现角度,上面的3个api设计多达到了,能用
- 但是如果从性能脚本,或者执行速度上个人还是推荐array.length = 0;
- 方法2和3的区别就是一个保留了array的其他属性,3则是直接赋值创建一个新的空array对象
- 当然在做arrayapi设计优化的时候,确实存在如ff浏览器和v8等这些内部优化