Object.extend = function (destination, source) {
for (var property in source)
destination[property] = source[property];
};
var Enumerable = {
_each: function (iterator) {
for (var i = 0, length = this .length; i < length; i++)
iterator(this [i]);
},
each: function (iterator, context) {
var index = 0;
this ._each(function (value) {
iterator.call(context, value, index++);
});
},
map: function (iterator, context) {
var results = [];
this .each(function (value, index) {
var res = iterator.call(context, value);
results.push(res);
});
return results;
},
invoke: function (method) {
var args = $A(arguments).slice(1);
return this .map(function (value) {
return value[method].apply(value, args);
});
},
};
Object.extend(Array.prototype, Enumerable);
function $A(iterable) {
var length = iterable.length || 0, results = new Array(length);
while (length--) results[length] = iterable[length];
return results;
}
function g() {
return [1, 2, 3, 4, 5].each(function (part) {
return 0;
});
}
function f() {
g();
g();
g();
g();
var result = [[2, 1, 3], [6, 5, 4]];
result = result.invoke('invoke' , 'toString' , 2);
result[0].join(', ' );
};
f();
Messung V0.5 C=91 H=92 G=91
¤ Dauer der Verarbeitung: 0.13 Sekunden
(vorverarbeitet)
¤
*© Formatika GbR, Deutschland