This bug is also in Radar as <rdar://4190700> See http://phrogz.net/JS/hasOwnProperty_test.html: Object.prototype.toSourceCode = function(){ /*stuff*/ } var animalSounds = { cat:'meow', dog:'woof' }; var output = ''; for (var animal in animalSounds){ if ( !animalSounds.hasOwnProperty || animalSounds.hasOwnProperty(animal) ){ output += 'The '+animal+' says "'+animalSounds[animal]+'"\n'; } } Expected output: The cat says "meow" The dog says "woof" Actual output from Safari 2.0 release 1: The toSourceCode says "function () { }" The cat says "meow" The dog says "woof" -------------------------------------------
Already fixed. *** This bug has been marked as a duplicate of 3293 ***