RunKit + npm:

node v12.22.12
version: master
endpointsharetweet
const deepmerge = require('deepmerge'); const deepmergeES = (target, source) => { target = Object.assign({}, target); source = Object.assign({}, source); // Iterate through `source` properties and if an `Object` set property to merge of `target` and `source` properties for (const key of Object.keys(source)) { if (source[key] instanceof Object) Object.assign(source[key], deepmergeES(target[key], source[key])); } // Join `target` and modified `source` Object.assign(target || {}, source); return target; } const Benchmark = require('benchmark'); const Suite = new Benchmark.Suite; Suite.add('deepmerge package', () => { const obj1 = { 'a': [{ 'b': 2 }, { 'd': 4 }] }; const obj2 = { 'a': [{ 'c': 3 }, { 'e': 5 }] }; const result = deepmerge(obj1, obj2); }).add('deepmerge simple', () => { const obj1 = { 'a': [{ 'b': 2 }, { 'd': 4 }] }; const obj2 = { 'a': [{ 'c': 3 }, { 'e': 5 }] }; const result = deepmergeES(obj1, obj2); }).on('cycle', function(event) { console.info(String(event.target)); }).run();
Created from: https://npm.runkit.com/
Loading…

no comments

    sign in to comment