Twice over the past few weeks using a negative start value for both String.substr and Array.splice has come back to bite me. So, for the record, if you are use to using:
// should return 'bar' 'foobar'.substr(-3); // should return [2,3,4] [0,1,2,3,4].splice(-3);
Too bad, you either need overwrite these methods with your own or change your approach thanks to IE. Mozilla provides a nice work around, but I just prefer to leave prototypes alone and approach it differently.