Skip to content
geeksforgeeks
  • Courses
    • DSA to Development
    • Get IBM Certification
    • Newly Launched!
      • Master Django Framework
      • Become AWS Certified
    • For Working Professionals
      • Interview 101: DSA & System Design
      • Data Science Training Program
      • JAVA Backend Development (Live)
      • DevOps Engineering (LIVE)
      • Data Structures & Algorithms in Python
    • For Students
      • Placement Preparation Course
      • Data Science (Live)
      • Data Structure & Algorithm-Self Paced (C++/JAVA)
      • Master Competitive Programming (Live)
      • Full Stack Development with React & Node JS (Live)
    • Full Stack Development
    • Data Science Program
    • All Courses
  • Tutorials
    • Data Structures & Algorithms
    • ML & Data Science
    • Interview Corner
    • Programming Languages
    • Web Development
    • CS Subjects
    • DevOps And Linux
    • School Learning
  • Practice
    • Build your AI Agent
    • GfG 160
    • Problem of the Day
    • Practice Coding Problems
    • GfG SDE Sheet
  • Contests
    • Accenture Hackathon (Ending Soon!)
    • GfG Weekly [Rated Contest]
    • Job-A-Thon Hiring Challenge
    • All Contests and Events
  • TypeScript Tutorial
  • TS Exercise
  • TS Interview Questions
  • TS Cheat Sheet
  • TS Array
  • TS String
  • TS Object
  • TS Operators
  • TS Projects
  • TS Union Types
  • TS Function
  • TS Class
  • TS Generic
Open In App
Next Article:
How to Create Objects with Dynamic Keys in TypeScript ?
Next article icon

How to Initialize a TypeScript Object with a JSON-Object ?

Last Updated : 23 Apr, 2024
Comments
Improve
Suggest changes
Like Article
Like
Report

To initialize a TypeScript Object with a JSON-Object, we have multiple approaches. In this article, we are going to learn how to initialize a TypeScript Object with a JSON-Object.

Below are the approaches used to initialize a TypeScript Object with a JSON-Object:

Table of Content

  • Object.assign
  • Type Assertion
  • Spread Operator
  • Class Initialization
  • Using Object Destructuring

Approach 1: Object.assign

Object.assign method copies the values of all enumerable properties from one or more source objects to a target object.

Example: In this example, the JSON string is parsed, and Object.assign is used to copy the properties into a new object. This creates a separate object with the same properties as the parsed JSON.

JavaScript
let jsonString = '{"name": "John", "age": 25}'; let user = Object.assign({}, JSON.parse(jsonString)); console.log(user.name); // Output: John console.log(user.age); // Output: 25 

Output:

John 25

Approach 2: Type Assertion

Type assertion is a way to tell the TypeScript compiler about the specific type of a variable when the type cannot be inferred automatically.

Example: In this example, we use type assertion to inform TypeScript about the expected structure of the object. The resulting 'user' object is then accessible with the specified properties.

JavaScript
let jsonString = '{"name": "John", "age": 25}'; let user = JSON.parse(jsonString) as { name: string; age: number }; console.log(user.name); // Output: John console.log(user.age); // Output: 25 

Output:

John 25

Approach 3: Spread Operator

The spread operator (...) is used for copying the properties of one object into another object.

Example: In this example, the spread operator (...) is utilized to spread the properties of the parsed JSON object into a new object. It provides a concise way to achieve the same result as Object.assign.

JavaScript
let jsonString = '{"name": "John", "age": 25}'; let user = { ...JSON.parse(jsonString) }; console.log(user.name); // Output: John console.log(user.age); // Output: 25 

Output:

John 25

Approach 4: Class Initialization

You can create a class with a constructor that takes a JSON object as a parameter and initializes the class properties.

Example: In this example, we define a User class with a constructor that takes a structured data object. An instance of the User class is then created by passing the parsed JSON data.

JavaScript
class User { name: string; age: number;  constructor(data: { name: string; age: number }) {     this.name = data.name;     this.age = data.age; } }  let jsonString = '{"name": "John", "age": 25}'; let user = new User(JSON.parse(jsonString)); console.log(user.name); // Output: John console.log(user.age); // Output: 25 

Output:

John  25

Approach 5: Using Object Destructuring

Object destructuring in TypeScript allows you to directly extract properties from an object and assign them to variables. You can use this technique to initialize a TypeScript object with a JSON object.

Example: In this example we parses a JSON string into an object, then extracts username and userAge using object destructuring, logging them.

JavaScript
let jsonString =     '{"username": "GFG", "userAge": 22}'; let { username, userAge } =     JSON.parse(jsonString);  console.log(username); console.log(userAge); 

Output
GFG 22 

Next Article
How to Create Objects with Dynamic Keys in TypeScript ?

A

amanv09
Improve
Article Tags :
  • JavaScript
  • Web Technologies
  • TypeScript

Similar Reads

  • How to Cast a JSON Object Inside of TypeScript Class?
    Casting a JSON object to a TypeScript class involves converting a plain JSON object (which lacks methods and proper typing) into an instance of a class that includes all the defined methods and type safety of that class. Types of Objects in TypeScriptPlain Objects: When parsing JSON data using the J
    3 min read
  • How to Convert an Array of Objects into Object in TypeScript ?
    Converting an array of objects into a single object is a common task in JavaScript and TypeScript programming, especially when you want to restructure data for easier access. In this article, we will see how to convert an array of objects into objects in TypeScript. We are given an array of objects
    3 min read
  • How to Iterate Array of Objects in TypeScript ?
    In TypeScript, we can iterate over the array of objects using various inbuilt loops and higher-order functions, We can use for...of Loop, forEach method, and map method. There are several approaches in TypeScript to iterate over the array of objects which are as follows: Table of Content Using for..
    4 min read
  • How to Create Objects with Dynamic Keys in TypeScript ?
    In TypeScript, objects with dynamic keys are those where the key names are not fixed and can be dynamically determined at runtime. This allows the creation of flexible data structures where properties can be added or accessed using variables, providing more versatile type definitions. These are the
    3 min read
  • How to Cast Object to Interface in TypeScript ?
    In TypeScript, sometimes you need to cast an object into an interface to perform some tasks. There are many ways available in TypeScript that can be used to cast an object into an interface as listed below: Table of Content Using the angle bracket syntaxUsing the as keywordUsing the spread operatorU
    3 min read
  • How to Convert an Object to a JSON String in Typescript ?
    In TypeScript, an object is a collection of related data and functionality. Objects are made up of properties and methods. Properties describe the object, methods describe what it can do. Table of Content Using JSON.stringify()Using json-stringify-safe libraryUsing a Custom Serialization FunctionUsi
    5 min read
  • How to Create an Object in TypeScript?
    TypeScript object is a collection of key-value pairs, where keys are strings and values can be any data type. Objects in TypeScript can store various types, including primitives, arrays, and functions, providing a structured way to organize and manipulate data. Creating Objects in TypescriptNow, let
    4 min read
  • How to make object properties immutable in TypeScript ?
    In this article, we will try to understand how we could make object properties immutable in TypeScript. JavaScript is a highly dynamic and flexible language, hence making object properties in JavaScript immutable is a little bit typical (although we may implement it somehow using a const data type t
    2 min read
  • How to Define Interfaces for Nested Objects in TypeScript ?
    In TypeScript, defining interfaces for nested objects involves specifying the structure of each level within the object hierarchy. This helps ensure that the nested objects adhere to a specific shape or pattern. Here are step-by-step instructions on how to define interfaces for nested objects in Typ
    2 min read
  • How to Deep Clone an Object & Preserve its Type with TypeScript ?
    In TypeScript, deep cloning an object by preserving its type consists of retaining the same structure and type information as of original object. Below are the approaches to Deep Clone an Object & Preserve its Type: Table of Content Using JSON.stringify and JSON.parseUsing Object.Assign function
    4 min read
geeksforgeeks-footer-logo
Corporate & Communications Address:
A-143, 7th Floor, Sovereign Corporate Tower, Sector- 136, Noida, Uttar Pradesh (201305)
Registered Address:
K 061, Tower K, Gulshan Vivante Apartment, Sector 137, Noida, Gautam Buddh Nagar, Uttar Pradesh, 201305
GFG App on Play Store GFG App on App Store
Advertise with us
  • Company
  • About Us
  • Legal
  • Privacy Policy
  • In Media
  • Contact Us
  • Advertise with us
  • GFG Corporate Solution
  • Placement Training Program
  • Languages
  • Python
  • Java
  • C++
  • PHP
  • GoLang
  • SQL
  • R Language
  • Android Tutorial
  • Tutorials Archive
  • DSA
  • Data Structures
  • Algorithms
  • DSA for Beginners
  • Basic DSA Problems
  • DSA Roadmap
  • Top 100 DSA Interview Problems
  • DSA Roadmap by Sandeep Jain
  • All Cheat Sheets
  • Data Science & ML
  • Data Science With Python
  • Data Science For Beginner
  • Machine Learning
  • ML Maths
  • Data Visualisation
  • Pandas
  • NumPy
  • NLP
  • Deep Learning
  • Web Technologies
  • HTML
  • CSS
  • JavaScript
  • TypeScript
  • ReactJS
  • NextJS
  • Bootstrap
  • Web Design
  • Python Tutorial
  • Python Programming Examples
  • Python Projects
  • Python Tkinter
  • Python Web Scraping
  • OpenCV Tutorial
  • Python Interview Question
  • Django
  • Computer Science
  • Operating Systems
  • Computer Network
  • Database Management System
  • Software Engineering
  • Digital Logic Design
  • Engineering Maths
  • Software Development
  • Software Testing
  • DevOps
  • Git
  • Linux
  • AWS
  • Docker
  • Kubernetes
  • Azure
  • GCP
  • DevOps Roadmap
  • System Design
  • High Level Design
  • Low Level Design
  • UML Diagrams
  • Interview Guide
  • Design Patterns
  • OOAD
  • System Design Bootcamp
  • Interview Questions
  • Inteview Preparation
  • Competitive Programming
  • Top DS or Algo for CP
  • Company-Wise Recruitment Process
  • Company-Wise Preparation
  • Aptitude Preparation
  • Puzzles
  • School Subjects
  • Mathematics
  • Physics
  • Chemistry
  • Biology
  • Social Science
  • English Grammar
  • Commerce
  • World GK
  • GeeksforGeeks Videos
  • DSA
  • Python
  • Java
  • C++
  • Web Development
  • Data Science
  • CS Subjects
@GeeksforGeeks, Sanchhaya Education Private Limited, All rights reserved
We use cookies to ensure you have the best browsing experience on our website. By using our site, you acknowledge that you have read and understood our Cookie Policy & Privacy Policy
Lightbox
Improvement
Suggest Changes
Help us improve. Share your suggestions to enhance the article. Contribute your expertise and make a difference in the GeeksforGeeks portal.
geeksforgeeks-suggest-icon
Create Improvement
Enhance the article with your expertise. Contribute to the GeeksforGeeks community and help create better learning resources for all.
geeksforgeeks-improvement-icon
Suggest Changes
min 4 words, max Words Limit:1000

Thank You!

Your suggestions are valuable to us.

What kind of Experience do you want to share?

Interview Experiences
Admission Experiences
Career Journeys
Work Experiences
Campus Experiences
Competitive Exam Experiences