Day 11

Objects

13 min
JavaScript 100 Days

Object ek data structure hai jo key-value pairs store karta hai. Real world entities represent karne ke liye — user, product, order — objects use karte hain.

Object Create karna

Curly braces {} se object banate hain.

objects.js
javascript
// Object literal
let user = {
  name: "Zohaib Arshad",
  age: 25,
  city: "Lahore",
  isStudent: false,
  skills: ["JavaScript", "React", "Next.js"]
};

// Access properties
console.log(user.name);        // dot notation
console.log(user["city"]);     // bracket notation

// Modify
user.age = 26;
user.email = "z@example.com"; // Add new property

// Delete
delete user.isStudent;

Methods — Functions inside Objects

Object ke andar functions bhi rakh sakte hain — inhe methods kehte hain.

methods.js
javascript
let calculator = {
  result: 0,

  add(n) {
    this.result += n;
    return this; // chaining ke liye
  },

  subtract(n) {
    this.result -= n;
    return this;
  },

  getResult() {
    return this.result;
  }
};

// Method chaining
console.log(
  calculator.add(10).add(5).subtract(3).getResult()
); // 12

Destructuring

Object se variables extract karna — clean aur modern way.

destructure.js
javascript
let user = {
  name: "Ali",
  age: 30,
  city: "Karachi",
  email: "ali@example.com"
};

// Old way
// let name = user.name;
// let age = user.age;

// Destructuring (modern)
let { name, age, city } = user;
console.log(name, age, city); // Ali 30 Karachi

// Rename while destructuring
let { name: userName, age: userAge } = user;
console.log(userName); // Ali

// Default values
let { country = "Pakistan" } = user;
console.log(country); // Pakistan

🎯 Practice Challenge

Product object banao: name, price, category, inStock, ratings. Ek method add karo jo discounted price return kare.