in public/dexie.js [239:256]
keys(a).forEach(function (prop) {
if (!hasOwn(b, prop)) rv[prfx + prop] = undefined; // Property removed
else {
var ap = a[prop],
bp = b[prop];
if (
typeof ap === "object" &&
typeof bp === "object" &&
ap &&
bp &&
// Now compare constructors are same (not equal because wont work in Safari)
"" + ap.constructor === "" + bp.constructor
)
// Same type of object but its properties may have changed
getObjectDiff(ap, bp, rv, prfx + prop + ".");
else if (ap !== bp) rv[prfx + prop] = b[prop]; // Primitive value changed
}
});