JavaScript

JavaScript is a high-level, interpreted programming language that is widely used for web development. Initially designed as a client-side scripting language, it runs directly in web browsers, enabling dynamic and interactive user experiences. JavaScript can now be used for server-side development as well.

JavaScript Object Properties

5 April 2025 | Category:

Great! Let’s dive deep into JavaScript Object Properties — explained in a clear and easy way with real examples. 🔍


🧱 What Are JavaScript Object Properties?

In JavaScript, objects are collections of properties, where each property is a key-value pair.

Syntax:

const objectName = {
  key: value,
};

Example:

const car = {
  brand: "Toyota",
  model: "Camry",
  year: 2020
};

In this object:

  • "brand", "model", and "year" are properties (keys)
  • "Toyota", "Camry", and 2020 are the values

🛠️ 1. Creating and Accessing Properties

➤ Dot Notation

console.log(car.brand);  // Toyota

➤ Bracket Notation

console.log(car["model"]); // Camry

Bracket notation is useful when:

  • The property name has spaces: obj["full name"]
  • The property name is stored in a variable

➕ 2. Adding New Properties

car.color = "Black";
car["fuel"] = "Petrol";

✏️ 3. Updating Existing Properties

car.year = 2022;

❌ 4. Deleting Properties

delete car.model;

🔁 5. Looping Through Properties

Using for...in loop:

for (let key in car) {
  console.log(key + ":", car[key]);
}

🧠 6. Property Types

A property can store:

  • String
  • Number
  • Boolean
  • Object (nested)
  • Array
  • Function (called a method)

Example:

const person = {
  name: "John",
  age: 30,
  hobbies: ["reading", "coding"],
  address: {
    city: "Delhi",
    zip: 110001
  },
  greet: function () {
    console.log("Hi, I'm " + this.name);
  }
};

🧬 7. Dynamic Property Names

let key = "language";
const dev = {
  [key]: "JavaScript"
};

console.log(dev.language); // JavaScript

📦 8. Checking if Property Exists

Using in operator:

console.log("name" in person); // true

Using hasOwnProperty():

console.log(person.hasOwnProperty("age")); // true

📋 9. Get All Property Names and Values

Object.keys(person);    // ['name', 'age', 'hobbies', 'address', 'greet']
Object.values(person);  // ['John', 30, [...], {...}, function]
Object.entries(person); // [['name', 'John'], ['age', 30], ...]

🧪 10. Property Shorthand

If the variable name and property name are same:

const name = "Dev";
const age = 21;

const user = { name, age };  // same as { name: name, age: age }

🛑 Bonus: Property Descriptors (Advanced)

Every property has hidden settings like:

  • writable (can be changed?)
  • enumerable (will it show in loops?)
  • configurable (can it be deleted?)
const obj = {};
Object.defineProperty(obj, "secret", {
  value: "hidden",
  writable: false,
  enumerable: false
});

📌 Summary Table

OperationExample
Access propertyobj.key or obj["key"]
Add propertyobj.newKey = value
Modify propertyobj.key = newValue
Delete propertydelete obj.key
Check if exists"key" in obj
List all keysObject.keys(obj)
Loop through propertiesfor (let key in obj)