Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Run results for:
js-diff vs deep-diff - Diff creation
Go to the benchmark
Embed
Embed Benchmark Result
Run details:
User agent:
Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:124.0) Gecko/20100101 Firefox/124.0
Browser:
Firefox 124
Operating system:
Ubuntu
Device Platform:
Desktop
Date tested:
2 years ago
Test name
Executions per second
diff
51930.5 Ops/sec
deep-diff
109387.1 Ops/sec
deep-diff serialized
71917.3 Ops/sec
HTML Preparation code:
<script src="https://cdnjs.cloudflare.com/ajax/libs/deep-diff/1.0.2/deep-diff.min.js" integrity="sha512-sKpj+p1Vl1GH12VgyCSFdaz5+yjKfd2z10v2G/l1ZeUNN91hZO2NuzuQeCw8ynaLCdYSXanLEekKRWxeqdXU5Q==" crossorigin="anonymous"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jsdiff/4.0.2/diff.min.js" integrity="sha512-pziHjry6XY+CawObjF30gr/WqV3k+7YaBSH3F/YgdJw279osLLT2f2XNFXRb0umygwQPgHJ2vvJoLLLZYj3fzA==" crossorigin="anonymous"></script>
Script Preparation code:
var oldObj = { "content": { "blocks": { "block-0": { "id": "block-0", "type": "p", "leafIds": [ "leaf-2" ] }, "block-1": { "id": "block-1", "type": "p", "leafIds": [ "leaf-3" ] } }, "leaves": { "leaf-2": { "id": "leaf-2", "text": "12345" }, "leaf-3": { "id": "leaf-3", "text": "abcde" } }, "blockIds": [ "block-0", "block-1" ] }, "selection": { "isReversed": false, "isCollapsed": true, "startEl": "leaf-2", "endEl": "leaf-2", "startOffset": 12, "endOffset": 12 } } var newObj = { "content": { "blocks": { "block-0": { "id": "block-0", "type": "p", "leafIds": [ "leaf-2" ] }, "block-1": { "id": "block-1", "type": "p", "leafIds": [ "leaf-3" ] } }, "leaves": { "leaf-2": { "id": "leaf-2", "text": "12345hooba12" }, "leaf-3": { "id": "leaf-3", "text": "abcde" } }, "blockIds": [ "block-0", "block-1" ] }, "selection": { "isReversed": false, "isCollapsed": true, "startEl": "leaf-2", "endEl": "leaf-2", "startOffset": 12, "endOffset": 12 } } var serialize = (obj) => JSON.stringify(obj, null, 1) var oldObjSerialized = serialize(oldObj) var diffs = []
Tests:
diff
var newObjSerialized = serialize(newObj) var diff = Diff.createPatch('', newObjSerialized, oldObjSerialized, 'a', 'b') diffs.push(diff)
deep-diff
var diff = DeepDiff.diff(newObj, oldObj) diffs.push(diff)
deep-diff serialized
var diff = DeepDiff.diff(newObj, oldObj) diffs.push(JSON.stringify(diff))