var List = function (arr) {
/// <summary>
/// 加载数组列表
/// </summary>
/// <returns type="List" />
/// <param name="arr">数组</param>
return List.fn.Load(arr);
};
List.fn = List.prototype = {
/// <summary>
/// 加载数组列表
/// </summary>
/// <returns type="List" />
/// <param name="arr">数组</param>
Load: function (arr) {
this.length = 0;
Array.prototype.push.apply(this, arr);
return this;
},
First: function (key, value) {
return this.Where(key, value)[0];
},
/*Where: function (key, value) {
var arr = [];
for (i = 0; i < this.length; i++) {
if (this[i][key] == value)
arr.push(this[i]);
}
return arr;
},*/
Where: function (callback) {
var arr = [];
for (i = 0; i < this.length; i++) {
if (callback.call(this[i],i,this[i])===true)
arr.push(this[i]);
}
return arr;
},
Select: function (key) {
var arr = [];
for (i = 0; i < this.length; i++) {
arr.push(this[i][key]);
}
return arr;
}
};
/// <summary>
/// 加载数组列表
/// </summary>
/// <returns type="List" />
/// <param name="arr">数组</param>
return List.fn.Load(arr);
};
List.fn = List.prototype = {
/// <summary>
/// 加载数组列表
/// </summary>
/// <returns type="List" />
/// <param name="arr">数组</param>
Load: function (arr) {
this.length = 0;
Array.prototype.push.apply(this, arr);
return this;
},
First: function (key, value) {
return this.Where(key, value)[0];
},
/*Where: function (key, value) {
var arr = [];
for (i = 0; i < this.length; i++) {
if (this[i][key] == value)
arr.push(this[i]);
}
return arr;
},*/
Where: function (callback) {
var arr = [];
for (i = 0; i < this.length; i++) {
if (callback.call(this[i],i,this[i])===true)
arr.push(this[i]);
}
return arr;
},
Select: function (key) {
var arr = [];
for (i = 0; i < this.length; i++) {
arr.push(this[i][key]);
}
return arr;
}
};