任何创建扩展数组的对象的方法
Any way to create a Object that extends Array?
我用javascript创建了一个lexer,我现在使用数组来描述一系列项目,我现在看到了拥有自己的range对象的用途,这样我就可以正确地区分"数组"answers"范围数组",使其读起来很好。
那么,有什么方法可以创建一个与Array对象的跨浏览器兼容的子类吗?
还是一种更好/更简单的方法,只按原样使用数组,对于"范围数组",我只使用自己选择的属性标记数组?
类似于:
var myRange = [1,2,3];
myrange.isRangeObj = true;
//i would then use if(myRange.isRangeObj) to do specific range operations.
//However i still think myRange instanceof Range reads better
您可以使用这个:
Array.prototype.isRangeObj = false;
因此,您创建的所有数组都将具有属性isRangeObj
使用javascript中的composition创建一个扩展Array:的Object
function Range(arr) {
this.arr = arr;
}
var myRange = new Range([1, 2, 3]);
if (myRange instanceof Range) {
doSomethingWithRange(myRange.arr);
}
相关文章:
- 从 javascript 中的对象方法返回一个对象
- 在Javascript中调用对象方法时不是函数类型错误
- Java Script将对象方法映射到数组中的对象
- 将数据从promise then方法传递到对象方法
- 设置显示后Flash对象方法不可用:无
- 通过引用Javascript中的另一个函数来传递对象方法
- Javascript库对象方法声明
- JavaScript对象范围-在对象方法中使用对象变量
- jQuery:如何使用文字对象方法中的方法来获取全局变量
- Javascript 对象方法不更新变量
- setInterval 只在对象方法上运行一次
- 对象方法中函数中的上下文
- 用JavaScript编写对象方法的最佳方式是什么
- 使用回调处理程序调用函数内部的父对象方法
- 从Javascript中的对象方法中访问全局变量
- 将此(对象)传递到一个对象方法嵌套方法中
- 为什么我得到“;不是函数错误”;对于我的对象方法
- 带有回调的Javascript对象方法中的递归
- 更正Node.js异步管道中的对象方法调用
- 如何在对象方法上调用requestAnimFrame