Here's something interesting: In any JS window run:
val = document.body.getBoundingClientRect();
console.log(val)
val.left += 10;
console.log(val)
or any other modification to the return value. How is this object be immutable?
This makes it hard to duck-punch the getBoundingClientRect() for an element, changing the original values. Although I suppose you could recreate the object, I didn't know JS even had the capability of immutable objects. Is this correct?