Handle trailing comma in Arrays

Code by RobG at SO

by Michel Plungjan

HTML

<div id="msg"></div>

JavaScript

Array.prototype.tidyTrailingElisions = function() {
  var i = this.length;
  while ( !this.hasOwnProperty(--i)) {}
  this.length = ++i;
  return this;
};

var msg = document.getElementById("msg");
function show(str) {
  msg.innerHTML+='<br />'+str;
}
var trailing =[1,2,3,];
show("trailing arr: "+trailing);
show("trailing arr length: "+trailing.length+"&mdash;should show 4 in IE, 3 anywhere else");
show("trailing arr after clean: "+trailing.tidyTrailingElisions().length+"&mdash;should show 3 in all browsers");
show("<hr/>");
var nulled =[1,2,3,null];
show("nulled arr: "+nulled);
show("nulled arr length: "+nulled.length+"&mdash;should show 4 in all browser");
show("nulled arr after clean: "+nulled.tidyTrailingElisions().length+"&mdash;should show 4 in all browsers");