Kamel:J*/lib/tools.js

/* +---+ * |                                                          | * |  Modul 1: Erweiterungen von Datentypen mittels prototype  | * |                                                          | * +---+ */

/* * Erweiterung von Array: Array.where erlaubt die Filterung von Objekten mittels Vergleichsfunktion * * Das benutze Array.each ist übrigens der for...in-Ersatz von Prototype * (for...in funktionert nicht 100% ordentlich, wenn man prototype in Arrays benutzt) * * Beispiel für Array.where: * var a = [1,2,3]; * a.where( function(e) { return(e>1) } ) * -> gibt zurück: [2,3] */

Array.prototype.where = function ( fkt ) { var out = []; this.each( function (e) {       if ( fkt(e) )            out.push(e)    } ); return out; }