How to Clone a JavaScript Object? Last Updated : 11 Jul, 2025 Comments Improve Suggest changes Like Article Like Report Here are different methods to clone a JavaScript object.1. Using Object.assign() MethodThe Object.assign() method is used to clone the given object. We have assigned the given object to the new empty object by just using this method. Syntaxlet Clone_object =Object.assign({}, sourceObject);Note: This method does only a shallow copy. It means that nested properties are still copied by reference. JavaScript const sourceObject = { a: 1, b: 2, c: 3 }; let Clone_object = {}; Clone_object = Object.assign({}, sourceObject); console.log(Clone_object); Output{ a: 1, b: 2, c: 3 } 2. Using Spread Operator This approaches uses Spread operator for the cloning of object. It assigned all the elements to the new object. JavaScript const sourceObject = { a: 1, b: 2, c: 3 }; let Clone_object = {}; Clone_object = {...sourceObject}; console.log(Clone_object); Output{ a: 1, b: 2, c: 3 } 3. Using hasOwnProperty() MethodThis approaches uses hasOwnProperty() Method. we have used a loop to iterate through the source object and assigning them to new object by using the hasOwnProperty() method. JavaScript const sourceObject = {a:1, b:2, c:3}; let Cloned_Object = {}; for (let prop in sourceObject) { if (sourceObject.hasOwnProperty(prop)) { Cloned_Object[prop] = sourceObject[prop]; } } console.log(Cloned_Object); Output{ a: 1, b: 2, c: 3 } 4. Using JSON.stringify() MethodThis approach uses JSON.stringify() Method to clone a JavaScript Object. We are parsing the JSON.stringify() object to JSON.parse() so that it can be cloned to new empty object. JavaScript const sourceObject = { a: 1, b: 2, c: 3 }; let Cloned_object = {}; Cloned_object = JSON.parse(JSON.stringify(sourceObject)); console.log(Cloned_object); Output{ a: 1, b: 2, c: 3 } Comment More info P PranchalKatiyar Follow Improve Article Tags : JavaScript Web Technologies javascript-object JavaScript-Questions Explore JavaScript BasicsIntroduction to JavaScript4 min readVariables and Datatypes in JavaScript6 min readJavaScript Operators5 min readControl Statements in JavaScript4 min readArray & StringJavaScript Arrays7 min readJavaScript Array Methods7 min readJavaScript Strings5 min readJavaScript String Methods9 min readFunction & ObjectFunctions in JavaScript5 min readJavaScript Function Expression3 min readFunction Overloading in JavaScript4 min readObjects in JavaScript4 min readJavaScript Object Constructors4 min readOOPObject Oriented Programming in JavaScript3 min readClasses and Objects in JavaScript4 min readWhat Are Access Modifiers In JavaScript ?5 min readJavaScript Constructor Method7 min readAsynchronous JavaScriptAsynchronous JavaScript2 min readJavaScript Callbacks4 min readJavaScript Promise4 min readEvent Loop in JavaScript4 min readAsync and Await in JavaScript2 min readException HandlingJavascript Error and Exceptional Handling6 min readJavaScript Errors Throw and Try to Catch2 min readHow to create custom errors in JavaScript ?2 min readJavaScript TypeError - Invalid Array.prototype.sort argument1 min readDOMHTML DOM (Document Object Model)9 min readHow to select DOM Elements in JavaScript ?3 min readJavaScript Custom Events4 min readJavaScript addEventListener() with Examples9 min readAdvanced TopicsClosure in JavaScript4 min readJavaScript Hoisting6 min readScope of Variables in JavaScript3 min readJavaScript Higher Order Functions7 min readDebugging in JavaScript4 min read Like