Are there any substantial reasons why modifying Array.push() to return the object pushed rather than the length of the new array might be a bad idea?
Array.push()
I
var arr = []; var element = Math.random(); assert(element === arr[arr.push(element)-1]);