object-rollback
v1.0.0
Published
Cancel changes to JavaScript object values (add/update/delete properties, add item into Map/Set, etc.)
Downloads
372
Readme
object-rollback
Cancel changes to JavaScript object values (add/update/delete properties, add item into Map/Set, etc.)
Install
npm install object-rollback
Usage
const { ObjectState } = require('object-rollback');
const someValue = {
a: 1,
b: 2,
c: [ 1, 2, 3 ],
};
console.log(someValue); // { a: 1, b: 2, c: [ 1, 2, 3 ] }
const state = new ObjectState(someValue);
someValue.b = 200;
someValue.x = 42;
someValue.c.push(9);
console.log(someValue); // { a: 1, b: 200, c: [ 1, 2, 3, 9 ], x: 42 }
state.rollback();
console.log(someValue); // { a: 1, b: 2, c: [ 1, 2, 3 ] }
Tested objects
Standard Built-in ECMAScript 2019 Objects
Error
- test codeError
EvalError
RangeError
ReferenceError
SyntaxError
TypeError
URIError
Date
- test codeRegExp
- test codeArray
- test codeMap
- test codeSet
- test codeTypedArray
- test codeInt8Array
Uint8Array
Uint8ClampedArray
Int16Array
Uint16Array
Int32Array
Uint32Array
BigInt64Array
BigUint64Array
Float32Array
Float64Array
DataView
- test code
Node.js Built-in Objects
Tests
To run the test suite, first install the dependencies, then run npm test
:
npm install
npm test
Contributing
see CONTRIBUTING.md