back

Log clear

Javascript object mutation during iteration

  1. this only makes sense if you test it in various browsers
  2. click here

Code

var doIterate = function() {
    var o = { zero:"nada", one:"uno", two:"dos" }, p, i = 0; 
    for(p in o) {
        if(o.hasOwnProperty(p)) {
            if(p === "one")  {
                o.one = "otro"; // change value of current bucket
                delete o.two; // remove a bucket
                o.three = "cuatro"; // add a new bucket
            }
            ++i;
        }
    }
}