<% ;(function(){ Array.define({ file: '/aspjs/core/array.asp' }, { filter: function filter(callback, context) { var array = this.slice(0), filter = []; for (var i = 0, l = array.length; i < l; i++) { if (callback.call(context, array[i])) filter.push(array[i]); } return filter; }, forEach: function map(callback, context) { for (var i = 0, l = this.length; i < l; i++) { callback.call(context, this[i], i, this); } return this; }, indexOf: function indexOf(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; }; return -1; }, map: function map(callback, context) { var array = this.slice(0), map = []; for (var i = 0, l = array.length; i < l; i++) { map.push(callback.call(context, array[i])); } return map; } }); Array.isArray = function isArray(arr) { return Object.prototype.toString.call(arr) === '[object Array]'; }; })(); %>