This cushioning code is not actually written: when you set the property, the value is remembered only on the watch browser and is not transmitted to the base object. It is intended for pure JavaScript objects whose properties have no side effects (for example, changing the DOM in the case innerHTML).
Recording through recording will be a pain, because there is no way to directly call the prototype setter. You will have to temporarily remove the property, write to the base property, and then return it to its place.
However, this is not worth pursuing IMO. DOM nodes are allowed to be "host objects", so there is no guarantee that any functions of the native-JavaScript property object will work on them at all.
( Object .)
innerHTML
, , .