zan*_*ona 2 javascript arrays implementation constructor class
如何创建自定义数组构造函数,它是本机Array构造函数的扩展版本?
例如,jQuery看起来像一个带有其他方法的数组,例如$().addClass.但是,它没有修改Array.prototype,因为new Array().hasClass是undefined.
那么,如何在不修改的情况下创建扩展数组实现Array.prototype呢?
Employees( ... ) //-> [{name: 'John', age: 32}, {name: 'Bob', age: 29}];
Employees( ... ).byAge(32)//-> [{name: 'John', age: 32}];
// and
Array().byAge //-> undefined
Run Code Online (Sandbox Code Playgroud)
jQuery对象不是Array,也不"覆盖"Array类.它就像阵列一样.
您可以通过浏览源来了解jQuery如何实现这一点; 还可以在Javascript中看到类似于对象的数组,以及为什么在Javascript中使用类似于数组的对象而不是本机数组.
| 归档时间: |
|
| 查看次数: |
267 次 |
| 最近记录: |