Run details:
Mozilla/5.0 (iPhone; CPU iPhone OS 15_6 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) CriOS/120.0.6099.119 Mobile/15E148 Safari/604.1
Chrome Mobile iOS 120
iOS 15.6
Mobile
9 months ago
Test name Executions per second
JSON.stringify 96021.9 Ops/sec
structuredClone 52638.7 Ops/sec
Script Preparation code:
x
 
var MyObject = {
  description: 'Creates a deep copy of source, which should be an object or an array.',
  myNumber: 123456789,
  myBoolean: true,
  jayson: {
    stringify: 'JSON.stringify() method converts a JavaScript value to a JSON string....',
    parse: 'JSON.parse() method parses a JSON string...'
  },
  deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {deep: {}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}
};
var myCopy = null;
Tests:
  • JSON.stringify

     
    myCopy = JSON.parse(JSON.stringify(MyObject));
  • structuredClone

     
    myCopy = structuredClone(MyObject);