What is readonly in Typescript ? Last Updated : 28 Apr, 2025 Summarize Comments Improve Suggest changes Share Like Article Like Report This article will cover the readonly keyword in TypeScript, which is a powerful superset of JavaScript that adds extra features and syntax to the language. The readonly keyword is one of these features, used to set a property or variable as read-only, meaning that the value cannot be changed once it has been initialized. In other words, this keyword makes a property or variable immutable, ensuring that it remains constant throughout the program and cannot be accidentally altered. By using the readonly keyword, a variable or property in TypeScript can only be assigned a value during initialization or within the constructor of the class. This helps to ensure that the value cannot be changed afterwards, reducing the risk of unintentional modifications that may introduce bugs or unexpected behavior in the code. In other words, readonly provides a way to guarantee that certain values remain constant and unalterable throughout the program. Syntax: class MyClass { readonly myProperty: MyType; constructor(myProperty: MyType) { this.myProperty = myProperty; } } Example 1:In this example, we have defined a name property as readonly. This means that the name property can only be set in the constructor and cannot be modified after that. However, the age property is not readonly, which means that it can be modified at any time. JavaScript class Person { readonly name: string; age: number; constructor(name: string, age: number) { this.name = name; this.age = age; } } const person = new Person('Alice', 30); person.name = 'Bob'; // Error: Cannot assign to 'name' because // it is a read-only property Output :Â Cannot assign to 'name' because it is a read-only property. Example 2:Â In the example above, myProperty is defined as readonly. This means that it can only be set once, which we do in the constructor of the class. Once myProperty has been initialized, it cannot be modified again. Â note that readonly only applies to the property itself, not to the value it contains. This means that if the property is an object, the properties of the object can still be modified, even if the property itself is readonly. As shown in the example the Name is can be changed but the object cannot be changed. JavaScript class MyClass { readonly myObject: { name: string }; constructor(name: string) { this.myObject = { name: name }; } } const myInstance = new MyClass('Alice'); myInstance.myObject.name = 'Bob'; // Allowed, even though myObject is readonly const myOtherObject = { name: 'Charlie' }; myInstance.myObject = myOtherObject; // Error: Cannot assign to 'myObject' because // it is a read-only property. Output:Â Cannot assign to 'myObject' because it is a read-only property. Comment More infoAdvertise with us I iamgaurav Follow Improve Article Tags : TypeScript Similar Reads TypeScript Tutorial TypeScript is a superset of JavaScript that adds extra features like static typing, interfaces, enums, and more. Essentially, TypeScript is JavaScript with additional syntax for defining types, making it a powerful tool for building scalable and maintainable applications.Static typing allows you to 8 min read Difference between TypeScript and JavaScript Ever wondered about the difference between JavaScript and TypeScript? If you're into web development, knowing these two languages is super important. They might seem alike, but they're actually pretty different and can affect how you code and build stuff online.In this article, we'll break down the 4 min read TypeScript Interview Questions and Answers TypeScript, a robust, statically typed superset of JavaScript, has become a go-to language for building scalable and maintainable applications. Developed by Microsoft, it enhances JavaScript by adding static typing and modern ECMAScript features, enabling developers to catch errors early and improve 15+ min read TypeScript Map TypeScript Map is a collection that stores key-value pairs, where keys and values can be of any type. It maintains the insertion order of keys and provides methods to add, retrieve, check, remove, and clear entries, ensuring efficient management of key-value data.Creating a MapA map can be created a 3 min read Typescript Set A Set in TypeScript is a bunch of unique values. It is part of the ECMAScript 2015 (ES6) standard and is implemented as a native object in JavaScript.Unlike arrays, sets do not allow duplicate elements, making them useful for storing collections of unique items. TypeScript provides strong typing for 3 min read TypeScript Array map() Method The Array.map() is an inbuilt TypeScript function that creates a new array with the results of calling a provided function on every element in the array.Syntax:array.map(callback[, thisObject])Parameters: This method accepts two parameters as mentioned above and described below: callback: This param 2 min read Introduction to TypeScript TypeScript is a syntactic superset of JavaScript that adds optional static typing, making it easier to write and maintain large-scale applications.Allows developers to catch errors during development rather than at runtime, improving code reliability.Enhances code readability and maintainability wit 5 min read How to Format Date in TypeScript ? Formatting dates is important especially when displaying them to the users or working with date-related data. TypeScript provides various ways to achieve this. Below are the methods to format the date data type in TypeScript:Table of ContentUsing toLocaleString() methodUsing toLocaleDateString() met 3 min read Data types in TypeScript In TypeScript, a data type defines the kind of values a variable can hold, ensuring type safety and enhancing code clarity.Primitive Types: Basic types like number, string, boolean, null, undefined, and symbol.Object Types: Complex structures including arrays, classes, interfaces, and functions.Prim 3 min read How do I Remove an Array Item in TypeScript? In this article, we will learn about the different ways of removing an item from an array in TypeScript. In TypeScript, an array can be defined using union typing if it contains items of different types. We can use the following methods to remove items from a TypeScript array:Table of ContentUsing t 4 min read Like