(function(name) {
var prototype = {}
prototype.__proto__ = Array.prototype;
with (prototype) {
// ниже перекрываешь методы добавляешь фильтры и.т.п.
// раз перекрыли -------------------------------------------------------
push = function(arg) {
if(typeof agr == 'string'){
//эта строчка использует метод массива
Array.prototype.push.apply(this, arguments)
}
};
// два перекрыли -------------------------------------------------------
blablabla = function(arg) {
alert(arg)
};
}
window[name] = function() {
var list = []
list.__proto__ = prototype
return list
}
})('List')
новые листы создаются без
new чтобы удобнее было, просто
var list = List()