我正在寻找一种方法来覆盖 JavaScript 中 Object 的 .length 属性。
我目前在 parent.properties.objects 数组上有一个包装器
(父用于使代码在上下文中更具可读性)
这是基本结构:
(父变量在命名空间中定义并初始化)
var parent = function () {
this.properties = {
objects: [];
};
};
包装
(function () {
"use strict";
objects = function () {
如果没有传递参数,则假设 get
if (arguments.length === 0) {
var _objects = parent.properties.objects;
return _objects;
修改或过滤对象
} else if (arguments.length > 0) {
...
}
};
这会创建一个 object.prototype (not [prototype]) 变量并添加方法 length()
objects.prototype.length = function () {
var length = parent.properties.objects.length;
return length;
}
错误
objects.prototype.__proto__.length = function () {
var length = parent.properties.objects.length;
return length;
}
parent.objects = objects;
})();