gruss Alexander,
»»~~~Javascript
if (null==Array.prototype.push) { /* code */ }
// ----^^^^^^
niemals nicht! das funktioniert nur, weil du die primitiven werte
der typen [Null] und [Undefined] einem vergleich unterziehst, der
nicht typsicher und damit unscharf ist, da typwandlung zugelassen
wird.
durch den vergleichsoperator »==« schluepfen ausserdem noch die
werte [""], [0], [false]. vergleiche dieser art validieren in
allen faellen zu [true], sobald die drei letztgenannten werte
untereinander verglichen werden - und eben auch (null == undefined).
dieses verhalten kann gewuenscht sein, meistens ist es aber eine
fehlerquelle. fuer typsicheres vergleichen bediene man sich des
opeartors »===«.
wenn Du den wert [undefined] erfragen moechtest, mache gebrauch
vom dafuer vorgesehenen operator »typeof«.
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](http://javascript.crockford.com/)
[ie:( fl:) br:> va:( ls:& fo:) rl:) n3;} n4:} ss:} de:µ js:} mo:? zu:\]](http://www.peter.in-berlin.de/projekte/selfcode/?code=ie%3A%28+fl%3A%29+br%3A%3E+va%3A%28+ls%3A%26+fo%3A%29+rl%3A%29+n3%3B%7D+n4%3A%7D+ss%3A%7D+de%3A%B5+js%3A%7D+mo%3A%3F+zu%3A%5D)