if (!Array.prototype.firstOrDefault) { Array.prototype.firstOrDefault= function (predicate: (item: any) => boolean) {for (var i = 0; i < (>this).length; i++) { let item= (>this)[i];if(predicate(item)) {returnitem; } }return null; } }if (!Array.prototype.where) { Array.prototype.where= function (predicate: (item: any) => boolean) { let result=[];for (var i = 0; i < (>this).length; i++) { let item= (>this)[i];if(predicate(item)) { result.push(item); } }returnresult; } }if (!Array.prototype.remove) { Array.prototype.remove= function (item: any): boolean{ let index= (>this).indexOf(item);if (index >= 0) { (>this).splice(index, 1);return true; }return false; } }if (!Array.prototype.removeRange) { Array.prototype.removeRange= function (items: any[]): void{for (var i = 0; i < items.length; i++) { (>this).remove(items[i]); } } }if (!Array.prototype.add) { Array.prototype.add= function (item: any): void{ (>this).push(item); } }if (!Array.prototype.addRange) { Array.prototype.addRange= function (items: any[]): void{for (var i = 0; i < items.length; i++) { (>this).push(items[i]); } } }if (!Array.prototype.orderBy) { Array.prototype.orderBy= function (propertyExpression: (item: any) =>any) { let result=[];var compareFunction = (item1: any, item2: any): number =>{if (propertyExpression(item1) > propertyExpression(item2)) return 1;if (propertyExpression(item2) > propertyExpression(item1)) return -1;return 0; }for (var i = 0; i < (>this).length; i++) {return (>this).sort(compareFunction); }returnresult; } }if (!Array.prototype.orderByDescending) { Array.prototype.orderByDescending= function (propertyExpression: (item: any) =>any) { let result=[];var compareFunction = (item1: any, item2: any): number =>{if (propertyExpression(item1) > propertyExpression(item2)) return -1;if (propertyExpression(item2) > propertyExpression(item1)) return 1;return 0; }for (var i = 0; i < (>this).length; i++) {return (>this).sort(compareFunction); }returnresult; } }if (!Array.prototype.orderByMany) { Array.prototype.orderByMany= function (propertyExpressions: [(item: any) =>any]) { let result=[];var compareFunction = (item1: any, item2: any): number =>{for (var i = 0; i < propertyExpressions.length; i++) { let propertyExpression=propertyExpressions[i];if (propertyExpression(item1) > propertyExpression(item2)) return 1;if (propertyExpression(item2) > propertyExpression(item1)) return -1; }return 0; }for (var i = 0; i < (>this).length; i++) {return (>this).sort(compareFunction); }returnresult; } }if (!Array.prototype.orderByManyDescending) { Array.prototype.orderByManyDescending= function (propertyExpressions: [(item: any) =>any]) { let result=[];var compareFunction = (item1: any, item2: any): number =>{for (var i = 0; i < propertyExpressions.length; i++) { let propertyExpression=propertyExpressions[i];if (propertyExpression(item1) > propertyExpression(item2)) return -1;if (propertyExpression(item2) > propertyExpression(item1)) return 1; }return 0; }for (var i = 0; i < (>this).length; i++) {return (>this).sort(compareFunction); }returnresult; } } })();
class ts 扩展方法_TypeScript扩展类方法
最新推荐文章于 2024-03-17 18:04:40 发布