Le 03/07/2012 15:09, John-David Dalton a écrit :
Just checked and IE8 returns `[]` correctly weeee!
On Tue, Jul 3, 2012 at 8:49 AM, John-David Dalton
<[email protected] <mailto:[email protected]>> wrote:
I recently saw something like
var a = ['a', 'b', 'c', 'd'];
a.splice(2); // -> ['c', 'd'] in latest Chrome, Opera, Firefox,
Safari, Rhino, RingoJS, you name it
by spec though I thought the `deleteCount` should be `0` and so
return `[]`.
http://es5.github.com/#x15.4.4.12
"Let /actualDeleteCount/ be min(max(ToInteger
<http://es5.github.com/#x9.4>(/deleteCount/),0),/len/ --/ actualStart/)."
var a = ['a', 'b', 'c', 'd'];
a.splice(2, 0); // -> []
Am I reading it wrong or is this a bug in most engines?
What about we say it's a spec bug and say IE8- is wrong while the rest
of the planet is right?
@mathias has a suggested fix:
http://mathias.html5.org/specs/javascript/#array.prototype.splice%28start,-deletecount-,-item1-,-item2-,-%E2%80%A6-%29%29
David
_______________________________________________
es-discuss mailing list
[email protected]
https://mail.mozilla.org/listinfo/es-discuss