Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
cloneDeep
(version: 0)
Comparing performance of:
cloneDeep1 vs deepClone2
Created:
5 years ago
by:
Guest
Jump to the latest result
Tests:
cloneDeep1
const obj = { "profile": { "name": "profile", "value": "Refinance 350k", "type": "hidden", "option_value_override": true, "options": { "Buying Next Home 200k": { "value": "Buying Next Home 200k", "depends": [ { "lvalue": "amount", "rvalue": 250000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Buying Next Home" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Buying Next Home 350k": { "value": "Buying Next Home 350k", "depends": [ { "lvalue": "amount", "rvalue": 250001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 425000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Buying Next Home" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Buying Next Home 500k": { "value": "Buying Next Home 500k", "depends": [ { "lvalue": "amount", "rvalue": 425001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 625000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Buying Next Home" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Buying Next Home 750k": { "value": "Buying Next Home 750k", "depends": [ { "lvalue": "amount", "rvalue": 625001, "comparator": "gte" }, { "lvalue": "purpose", "rvalue": "Buying Next Home" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Refinance 200k": { "value": "Refinance 200k", "depends": [ { "lvalue": "amount", "rvalue": 250000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Refinance" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Refinance 350k": { "value": "Refinance 350k", "depends": [ { "lvalue": "amount", "rvalue": 250001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 425000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Refinance" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Refinance 500k": { "value": "Refinance 500k", "depends": [ { "lvalue": "amount", "rvalue": 425001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 625000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Refinance" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Refinance 750k": { "value": "Refinance 750k", "depends": [ { "lvalue": "amount", "rvalue": 625001, "comparator": "gte" }, { "lvalue": "purpose", "rvalue": "Refinance" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Line of Credit 200k": { "value": "Line of Credit 200k", "depends": [ { "lvalue": "amount", "rvalue": 250000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Line of Credit" } ] }, "Line of Credit 350k": { "value": "Line of Credit 350k", "depends": [ { "lvalue": "amount", "rvalue": 250001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 425000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Line of Credit" } ] }, "Line of Credit 500k": { "value": "Line of Credit 500k", "depends": [ { "lvalue": "amount", "rvalue": 425001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 625000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Line of Credit" } ] }, "Line of Credit 750k": { "value": "Line of Credit 750k", "depends": [ { "lvalue": "amount", "rvalue": 625001, "comparator": "gte" }, { "lvalue": "purpose", "rvalue": "Line of Credit" } ] }, "Investor 200k": { "value": "Investor 200k", "depends": [ { "lvalue": "amount", "rvalue": 250000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Investing" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Investor 350k": { "value": "Investor 350k", "depends": [ { "lvalue": "amount", "rvalue": 250001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 425000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Investing" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Investor 500k": { "value": "Investor 500k", "depends": [ { "lvalue": "amount", "rvalue": 425001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 625000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Investing" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Investor 750k": { "value": "Investor 750k", "depends": [ { "lvalue": "amount", "rvalue": 625001, "comparator": "gte" }, { "lvalue": "purpose", "rvalue": "Investing" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Investor - Interest Only 200k": { "value": "Investor - Interest Only 200k", "depends": [ { "lvalue": "amount", "rvalue": 250000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Investing" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Investor - Interest Only 350k": { "value": "Investor - Interest Only 350k", "depends": [ { "lvalue": "amount", "rvalue": 250001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 425000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Investing" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Investor - Interest Only 500k": { "value": "Investor - Interest Only 500k", "depends": [ { "lvalue": "amount", "rvalue": 425001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 625000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Investing" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Investor - Interest Only 750k": { "value": "Investor - Interest Only 750k", "depends": [ { "lvalue": "amount", "rvalue": 625001, "comparator": "gte" }, { "lvalue": "purpose", "rvalue": "Investing" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "First Home Buyer 200k": { "value": "First Home Buyer 200k", "depends": [ { "lvalue": "amount", "rvalue": 250000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "First Home Buyer" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "First Home Buyer 350k": { "value": "First Home Buyer 350k", "depends": [ { "lvalue": "amount", "rvalue": 250001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 425000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "First Home Buyer" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "First Home Buyer 500k": { "value": "First Home Buyer 500k", "depends": [ { "lvalue": "amount", "rvalue": 425001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 625000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "First Home Buyer" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "First Home Buyer 750k": { "value": "First Home Buyer 750k", "depends": [ { "lvalue": "amount", "rvalue": 625001, "comparator": "gte" }, { "lvalue": "purpose", "rvalue": "First Home Buyer" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Construction 200k": { "value": "Construction 200k", "depends": [ { "lvalue": "amount", "rvalue": 250000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Construction" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Construction 350k": { "value": "Construction 350k", "depends": [ { "lvalue": "amount", "rvalue": 250001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 425000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Construction" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Construction 500k": { "value": "Construction 500k", "depends": [ { "lvalue": "amount", "rvalue": 425001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 625000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Construction" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Construction 750k": { "value": "Construction 750k", "depends": [ { "lvalue": "amount", "rvalue": 625001, "comparator": "gte" }, { "lvalue": "purpose", "rvalue": "Construction" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Buying Next Home - Interest Only 200k": { "value": "Buying Next Home - Interest Only 200k", "depends": [ { "lvalue": "amount", "rvalue": 250000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Buying Next Home" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Buying Next Home - Interest Only 350k": { "value": "Buying Next Home - Interest Only 350k", "depends": [ { "lvalue": "amount", "rvalue": 250001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 425000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Buying Next Home" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Buying Next Home - Interest Only 500k": { "value": "Buying Next Home - Interest Only 500k", "depends": [ { "lvalue": "amount", "rvalue": 425001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 625000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Buying Next Home" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Buying Next Home - Interest Only 750k": { "value": "Buying Next Home - Interest Only 750k", "depends": [ { "lvalue": "amount", "rvalue": 625001, "comparator": "gte" }, { "lvalue": "purpose", "rvalue": "Buying Next Home" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Refinance - Interest Only 200k": { "value": "Refinance - Interest Only 200k", "depends": [ { "lvalue": "amount", "rvalue": 250000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Refinance" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Refinance - Interest Only 350k": { "value": "Refinance - Interest Only 350k", "depends": [ { "lvalue": "amount", "rvalue": 250001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 425000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Refinance" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Refinance - Interest Only 500k": { "value": "Refinance - Interest Only 500k", "depends": [ { "lvalue": "amount", "rvalue": 425001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 625000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Refinance" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Refinance - Interest Only 750k": { "value": "Refinance - Interest Only 750k", "depends": [ { "lvalue": "amount", "rvalue": 625001, "comparator": "gte" }, { "lvalue": "purpose", "rvalue": "Refinance" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "First Home Buyer - Interest Only 200k": { "value": "First Home Buyer - Interest Only 200k", "depends": [ { "lvalue": "amount", "rvalue": 250000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "First Home Buyer" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "First Home Buyer - Interest Only 350k": { "value": "First Home Buyer - Interest Only 350k", "depends": [ { "lvalue": "amount", "rvalue": 250001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 425000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "First Home Buyer" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "First Home Buyer - Interest Only 500k": { "value": "First Home Buyer - Interest Only 500k", "depends": [ { "lvalue": "amount", "rvalue": 425001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 625000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "First Home Buyer" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "First Home Buyer - Interest Only 750k": { "value": "First Home Buyer - Interest Only 750k", "depends": [ { "lvalue": "amount", "rvalue": 625001, "comparator": "gte" }, { "lvalue": "purpose", "rvalue": "First Home Buyer" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Construction - Interest Only 200k": { "value": "Construction - Interest Only 200k", "depends": [ { "lvalue": "amount", "rvalue": 250000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Construction" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Construction - Interest Only 350k": { "value": "Construction - Interest Only 350k", "depends": [ { "lvalue": "amount", "rvalue": 250001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 425000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Construction" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Construction - Interest Only 500k": { "value": "Construction - Interest Only 500k", "depends": [ { "lvalue": "amount", "rvalue": 425001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 625000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Construction" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Construction - Interest Only 750k": { "value": "Construction - Interest Only 750k", "depends": [ { "lvalue": "amount", "rvalue": 625001, "comparator": "gte" }, { "lvalue": "purpose", "rvalue": "Construction" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] } }, "text": "Refinance 350k" }, "amount": { "name": "Loan amount", "value": "350000", "autocomma": true, "classes": "form-group col-sm-6 simplified-col-sm-3", "ng_classes": "form-group col-xs-12 col-sm-4 col-md-3 order-md-1", "format": "currency", "validate": { "required": true, "numeric": true, "minNumber": 50000, "maxNumber": 1000000000 }, "error_message": "Loan amount must only be numbers with commas and have a value greater than 50,000.", "round_values": true, "natural_selector_text": { "text_after": "loan", "type": "amount" } }, "purpose": { "name": "Loan purpose", "text": "Refinance", "value": "Refinance", "classes": "form-group col-sm-6 simplified-col-sm-3", "ng_classes": "form-group col-xs-12 col-sm-4 col-md-3 order-md-2", "options": { "Buying Next Home": "Buying Next Home", "Refinance": "Refinance", "Line of Credit": "Line of Credit", "Investing": "Investing", "First Home Buyer": "First Home Buyer", "Construction": "Construction" }, "natural_selector_text": { "text_before": " for" } }, "repayment_type": { "name": "Repayment type", "value": "P+I", "classes": "form-group col-sm-6 simplified-hidden", "ng_classes": "form-group hidden", "exclude_prefill": true, "options": { "Principal & Interest": "P+I", "Interest only": "IO" }, "natural_selector_text": { "text_before": "with a repayment type of" }, "text": "Principal & Interest" }, "state": { "name": "State", "value": "NSW", "classes": "form-group col-sm-6 simplified-col-sm-2", "ng_classes": "form-group col-xs-12 col-sm-4 col-md-3 order-md-3", "use_geoip": "state", "options": [ "ACT", "NSW", "NT", "QLD", "SA", "TAS", "VIC", "WA" ], "natural_selector_text": { "text_before": "in" } }, "Loan Type": { "name": "Interest types", "value": "Variable", "exclude_prefill": true, "classes": "form-group col-sm-12 inline simplified-hidden", "ng_classes": "form-group hidden", "type": "checkbox", "options": { "Variable": "Variable", "1 year fixed": "Fixed Loan 1yr", "2 years fixed": "Fixed Loan 2yr", "3 years fixed": "Fixed Loan 3yr", "5 years fixed": "Fixed Loan 5yr" }, "validate": { "required": true }, "error_message": "One or more interest type is needed before comparing Home Loans", "text": "Variable" }, "provider_link": { "name": "provider_link", "classes": "col-sm-12 text-center inline inline-label provider-link", "ng_classes": "col-xs-12 col-sm-8 col-md-12 text-left inline inline-label provider-link order-md-5", "facet_preselect": true, "text_override": false, "type": "checkbox", "value": "Yes, just compare results with links", "options": { "Just compare loans which link to a loan provider": "Yes, just compare results with links" }, "text": "Just compare loans which link to a loan provider" }, "Compare": { "name": "Compare", "type": "button", "ng_classes": "col-xs-12 col-sm-4 col-md-3 order-md-4", "info_link": { "text": "No contact details required ☺" } } }; function clone(item) { if (!item) { return item; } // null, undefined values check var types = [ Number, String, Boolean ], result; // normalizing primitives if someone did new String('aaa'), or new Number('444'); types.forEach(function(type) { if (item instanceof type) { result = type( item ); } }); if (typeof result == "undefined") { if (Object.prototype.toString.call( item ) === "[object Array]") { result = []; item.forEach(function(child, index, array) { result[index] = clone( child ); }); } else if (typeof item == "object") { // testing that this is DOM if (item.nodeType && typeof item.cloneNode == "function") { result = item.cloneNode( true ); } else if (!item.prototype) { // check that this is a literal if (item instanceof Date) { result = new Date(item); } else { // it is an object literal result = {}; for (var i in item) { result[i] = clone( item[i] ); } } } else { // depending what you would like here, // just keep the reference, or create new object if (false && item.constructor) { // would not advice to do that, reason? Read below result = new item.constructor(); } else { result = item; } } } else { result = item; } } return result; } clone(obj);
deepClone2
const obj = { "profile": { "name": "profile", "value": "Refinance 350k", "type": "hidden", "option_value_override": true, "options": { "Buying Next Home 200k": { "value": "Buying Next Home 200k", "depends": [ { "lvalue": "amount", "rvalue": 250000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Buying Next Home" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Buying Next Home 350k": { "value": "Buying Next Home 350k", "depends": [ { "lvalue": "amount", "rvalue": 250001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 425000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Buying Next Home" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Buying Next Home 500k": { "value": "Buying Next Home 500k", "depends": [ { "lvalue": "amount", "rvalue": 425001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 625000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Buying Next Home" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Buying Next Home 750k": { "value": "Buying Next Home 750k", "depends": [ { "lvalue": "amount", "rvalue": 625001, "comparator": "gte" }, { "lvalue": "purpose", "rvalue": "Buying Next Home" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Refinance 200k": { "value": "Refinance 200k", "depends": [ { "lvalue": "amount", "rvalue": 250000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Refinance" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Refinance 350k": { "value": "Refinance 350k", "depends": [ { "lvalue": "amount", "rvalue": 250001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 425000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Refinance" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Refinance 500k": { "value": "Refinance 500k", "depends": [ { "lvalue": "amount", "rvalue": 425001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 625000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Refinance" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Refinance 750k": { "value": "Refinance 750k", "depends": [ { "lvalue": "amount", "rvalue": 625001, "comparator": "gte" }, { "lvalue": "purpose", "rvalue": "Refinance" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Line of Credit 200k": { "value": "Line of Credit 200k", "depends": [ { "lvalue": "amount", "rvalue": 250000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Line of Credit" } ] }, "Line of Credit 350k": { "value": "Line of Credit 350k", "depends": [ { "lvalue": "amount", "rvalue": 250001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 425000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Line of Credit" } ] }, "Line of Credit 500k": { "value": "Line of Credit 500k", "depends": [ { "lvalue": "amount", "rvalue": 425001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 625000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Line of Credit" } ] }, "Line of Credit 750k": { "value": "Line of Credit 750k", "depends": [ { "lvalue": "amount", "rvalue": 625001, "comparator": "gte" }, { "lvalue": "purpose", "rvalue": "Line of Credit" } ] }, "Investor 200k": { "value": "Investor 200k", "depends": [ { "lvalue": "amount", "rvalue": 250000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Investing" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Investor 350k": { "value": "Investor 350k", "depends": [ { "lvalue": "amount", "rvalue": 250001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 425000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Investing" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Investor 500k": { "value": "Investor 500k", "depends": [ { "lvalue": "amount", "rvalue": 425001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 625000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Investing" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Investor 750k": { "value": "Investor 750k", "depends": [ { "lvalue": "amount", "rvalue": 625001, "comparator": "gte" }, { "lvalue": "purpose", "rvalue": "Investing" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Investor - Interest Only 200k": { "value": "Investor - Interest Only 200k", "depends": [ { "lvalue": "amount", "rvalue": 250000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Investing" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Investor - Interest Only 350k": { "value": "Investor - Interest Only 350k", "depends": [ { "lvalue": "amount", "rvalue": 250001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 425000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Investing" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Investor - Interest Only 500k": { "value": "Investor - Interest Only 500k", "depends": [ { "lvalue": "amount", "rvalue": 425001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 625000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Investing" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Investor - Interest Only 750k": { "value": "Investor - Interest Only 750k", "depends": [ { "lvalue": "amount", "rvalue": 625001, "comparator": "gte" }, { "lvalue": "purpose", "rvalue": "Investing" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "First Home Buyer 200k": { "value": "First Home Buyer 200k", "depends": [ { "lvalue": "amount", "rvalue": 250000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "First Home Buyer" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "First Home Buyer 350k": { "value": "First Home Buyer 350k", "depends": [ { "lvalue": "amount", "rvalue": 250001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 425000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "First Home Buyer" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "First Home Buyer 500k": { "value": "First Home Buyer 500k", "depends": [ { "lvalue": "amount", "rvalue": 425001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 625000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "First Home Buyer" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "First Home Buyer 750k": { "value": "First Home Buyer 750k", "depends": [ { "lvalue": "amount", "rvalue": 625001, "comparator": "gte" }, { "lvalue": "purpose", "rvalue": "First Home Buyer" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Construction 200k": { "value": "Construction 200k", "depends": [ { "lvalue": "amount", "rvalue": 250000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Construction" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Construction 350k": { "value": "Construction 350k", "depends": [ { "lvalue": "amount", "rvalue": 250001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 425000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Construction" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Construction 500k": { "value": "Construction 500k", "depends": [ { "lvalue": "amount", "rvalue": 425001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 625000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Construction" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Construction 750k": { "value": "Construction 750k", "depends": [ { "lvalue": "amount", "rvalue": 625001, "comparator": "gte" }, { "lvalue": "purpose", "rvalue": "Construction" }, { "lvalue": "repayment_type", "rvalue": "P+I" } ] }, "Buying Next Home - Interest Only 200k": { "value": "Buying Next Home - Interest Only 200k", "depends": [ { "lvalue": "amount", "rvalue": 250000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Buying Next Home" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Buying Next Home - Interest Only 350k": { "value": "Buying Next Home - Interest Only 350k", "depends": [ { "lvalue": "amount", "rvalue": 250001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 425000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Buying Next Home" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Buying Next Home - Interest Only 500k": { "value": "Buying Next Home - Interest Only 500k", "depends": [ { "lvalue": "amount", "rvalue": 425001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 625000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Buying Next Home" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Buying Next Home - Interest Only 750k": { "value": "Buying Next Home - Interest Only 750k", "depends": [ { "lvalue": "amount", "rvalue": 625001, "comparator": "gte" }, { "lvalue": "purpose", "rvalue": "Buying Next Home" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Refinance - Interest Only 200k": { "value": "Refinance - Interest Only 200k", "depends": [ { "lvalue": "amount", "rvalue": 250000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Refinance" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Refinance - Interest Only 350k": { "value": "Refinance - Interest Only 350k", "depends": [ { "lvalue": "amount", "rvalue": 250001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 425000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Refinance" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Refinance - Interest Only 500k": { "value": "Refinance - Interest Only 500k", "depends": [ { "lvalue": "amount", "rvalue": 425001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 625000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Refinance" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Refinance - Interest Only 750k": { "value": "Refinance - Interest Only 750k", "depends": [ { "lvalue": "amount", "rvalue": 625001, "comparator": "gte" }, { "lvalue": "purpose", "rvalue": "Refinance" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "First Home Buyer - Interest Only 200k": { "value": "First Home Buyer - Interest Only 200k", "depends": [ { "lvalue": "amount", "rvalue": 250000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "First Home Buyer" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "First Home Buyer - Interest Only 350k": { "value": "First Home Buyer - Interest Only 350k", "depends": [ { "lvalue": "amount", "rvalue": 250001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 425000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "First Home Buyer" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "First Home Buyer - Interest Only 500k": { "value": "First Home Buyer - Interest Only 500k", "depends": [ { "lvalue": "amount", "rvalue": 425001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 625000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "First Home Buyer" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "First Home Buyer - Interest Only 750k": { "value": "First Home Buyer - Interest Only 750k", "depends": [ { "lvalue": "amount", "rvalue": 625001, "comparator": "gte" }, { "lvalue": "purpose", "rvalue": "First Home Buyer" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Construction - Interest Only 200k": { "value": "Construction - Interest Only 200k", "depends": [ { "lvalue": "amount", "rvalue": 250000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Construction" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Construction - Interest Only 350k": { "value": "Construction - Interest Only 350k", "depends": [ { "lvalue": "amount", "rvalue": 250001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 425000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Construction" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Construction - Interest Only 500k": { "value": "Construction - Interest Only 500k", "depends": [ { "lvalue": "amount", "rvalue": 425001, "comparator": "gte" }, { "lvalue": "amount", "rvalue": 625000, "comparator": "lte" }, { "lvalue": "purpose", "rvalue": "Construction" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] }, "Construction - Interest Only 750k": { "value": "Construction - Interest Only 750k", "depends": [ { "lvalue": "amount", "rvalue": 625001, "comparator": "gte" }, { "lvalue": "purpose", "rvalue": "Construction" }, { "lvalue": "repayment_type", "rvalue": "IO" } ] } }, "text": "Refinance 350k" }, "amount": { "name": "Loan amount", "value": "350000", "autocomma": true, "classes": "form-group col-sm-6 simplified-col-sm-3", "ng_classes": "form-group col-xs-12 col-sm-4 col-md-3 order-md-1", "format": "currency", "validate": { "required": true, "numeric": true, "minNumber": 50000, "maxNumber": 1000000000 }, "error_message": "Loan amount must only be numbers with commas and have a value greater than 50,000.", "round_values": true, "natural_selector_text": { "text_after": "loan", "type": "amount" } }, "purpose": { "name": "Loan purpose", "text": "Refinance", "value": "Refinance", "classes": "form-group col-sm-6 simplified-col-sm-3", "ng_classes": "form-group col-xs-12 col-sm-4 col-md-3 order-md-2", "options": { "Buying Next Home": "Buying Next Home", "Refinance": "Refinance", "Line of Credit": "Line of Credit", "Investing": "Investing", "First Home Buyer": "First Home Buyer", "Construction": "Construction" }, "natural_selector_text": { "text_before": " for" } }, "repayment_type": { "name": "Repayment type", "value": "P+I", "classes": "form-group col-sm-6 simplified-hidden", "ng_classes": "form-group hidden", "exclude_prefill": true, "options": { "Principal & Interest": "P+I", "Interest only": "IO" }, "natural_selector_text": { "text_before": "with a repayment type of" }, "text": "Principal & Interest" }, "state": { "name": "State", "value": "NSW", "classes": "form-group col-sm-6 simplified-col-sm-2", "ng_classes": "form-group col-xs-12 col-sm-4 col-md-3 order-md-3", "use_geoip": "state", "options": [ "ACT", "NSW", "NT", "QLD", "SA", "TAS", "VIC", "WA" ], "natural_selector_text": { "text_before": "in" } }, "Loan Type": { "name": "Interest types", "value": "Variable", "exclude_prefill": true, "classes": "form-group col-sm-12 inline simplified-hidden", "ng_classes": "form-group hidden", "type": "checkbox", "options": { "Variable": "Variable", "1 year fixed": "Fixed Loan 1yr", "2 years fixed": "Fixed Loan 2yr", "3 years fixed": "Fixed Loan 3yr", "5 years fixed": "Fixed Loan 5yr" }, "validate": { "required": true }, "error_message": "One or more interest type is needed before comparing Home Loans", "text": "Variable" }, "provider_link": { "name": "provider_link", "classes": "col-sm-12 text-center inline inline-label provider-link", "ng_classes": "col-xs-12 col-sm-8 col-md-12 text-left inline inline-label provider-link order-md-5", "facet_preselect": true, "text_override": false, "type": "checkbox", "value": "Yes, just compare results with links", "options": { "Just compare loans which link to a loan provider": "Yes, just compare results with links" }, "text": "Just compare loans which link to a loan provider" }, "Compare": { "name": "Compare", "type": "button", "ng_classes": "col-xs-12 col-sm-4 col-md-3 order-md-4", "info_link": { "text": "No contact details required ☺" } } }; const deepClone = obj => { if (obj === null) return null; let clone = Object.assign({}, obj); Object.keys(clone).forEach( key => (clone[key] = typeof obj[key] === 'object' ? deepClone(obj[key]) : obj[key]) ); if (Array.isArray(obj)) { clone.length = obj.length; return Array.from(clone); } return clone; }; deepClone(obj);
Rendered benchmark preparation results:
Suite status:
<idle, ready to run>
Run tests (2)
Previous results
Fork
Test case name
Result
cloneDeep1
deepClone2
Fastest:
N/A
Slowest:
N/A
Latest run results:
No previous run results
This benchmark does not have any results yet. Be the first one
to run it!
Autogenerated LLM Summary
(model
llama3.1:latest
, generated one year ago):
The provided code is a JavaScript object that contains various configurations and settings, including: * A JSON object representing a form with several fields (e.g., "State", "Loan Type", etc.) * A function named `deepClone` which recursively clones an object or array * An array of test results with information such as browser type, device platform, operating system, executions per second, and test name The code appears to be a part of a larger testing framework, possibly used for performance benchmarking. The purpose of the `deepClone` function is likely to create an exact copy of a complex data structure, preserving its original properties and values. To answer your question, I'd be happy to help with any specific inquiry related to this code! What would you like me to assist with?
Related benchmarks:
Object Deep Copy Test3
Lodash cloneDeep vs JSON Clone vs Bitfish Simple Clone
JavaScript spread operator vs cloneDeep
Comparing deep cloning methods (array of objects): Lodash <> Custom clone func <> JSON.parse <> structuredClone
Comparing deep cloning methods (small object): Lodash <> Custom clone func <> JSON.parse <> structuredClone 2
Comments
Confirm delete:
Do you really want to delete benchmark?