peterS.: typsicherheit ... uebergebene argumente auf deren typ pruefen?

Beitrag lesen

gruss mAciD,

Diese Fehlermeldung bekomme ich, wenn ich die Funktion generateSortTable ausführe:

TypeError: arrayToCopy.slice is not a function

in diesem fall bekommt schon die funktion [generateSortTable] ein ungueltiges
[unsortAr] argument zugewiesen.

ausserdem wuerde ich die hilfsfunktion [copyArray] so umschreiben, dass diese
unabhaengig von gueltigen/ungueltigen argumenten immer einen wert zurueckgibt,
ohne, wie in dem von Dir beschriebenen fall, mit einer fehlermeldung abzubrechen.

var /*Array.*/makeShallowCopy = (function (arr) {  
  
//return arr.slice();  
//return ((arr && (typeof arr.slice == "function") && arr.slice()) || []);  
//return ((arr && (typeof arr.slice == "function") && arr.slice()) || null);  
//return ((arr && (typeof arr.slice == "function") && arr.slice()) || window.undefined);  
  return ((arr && (typeof arr.slice == "function") && arr.slice()) || (arr && arr.slice));  
});

Anmerkung: die Funktion ist noch nicht ganz ausprogrammiert, aber es scheitert schon
am kopieren des Arrays.

exakt - siehe oben.

so long - peterS. - pseliger@gmx.net

--
»Because objects in JavaScript are so flexible, you will want to think differently about class hierarchies.
Deep hierarchies are inappropriate. Shallow hierarchies are efficient and expressive.« - Douglas Crockford
ie:( fl:) br:> va:( ls:& fo:) rl:) n3;} n4:} ss:} de:µ js:} mo:? zu:]