Tech TutorBangla Web Documentation
Portfolio
HomeHTMLCSSTailwind CSSJavaScriptTypeScriptReactNext.jsNode.jsExpressSocket.IOExpoWordPressPostgreSQLPrismaPostgresNestJSMongoDBDockerTanStackTanStack TableRTK QueryGitGitHub
  • JavaScript Documentation48টি অধ্যায়
প্রযুক্তি নির্বাচন
HomeHTMLCSSTailwind CSSJavaScriptTypeScriptReactNext.jsNode.jsExpressSocket.IOExpoWordPressPostgreSQLPrismaPostgresNestJSMongoDBDockerTanStackTanStack TableRTK QueryGitGitHub
  • Introduction
  • JavaScript কী?
  • Syntax & Comments
  • Variables
  • Data Types: Basics
  • Data Types: Conversion
  • Data Types: Advanced
  • Strings
  • Numbers & Math
  • Date & Time
  • Operators
  • Conditions
  • Loops
  • Functions: Basics
  • Functions: Intermediate
  • Functions: Advanced
  • Scope & Hoisting
  • Closures & this
  • ES6+ Modern
  • Arrays: Basics
  • Arrays: Intermediate
  • Arrays: Advanced
  • Objects: Basics
  • Objects: Intermediate
  • Objects: Advanced
  • Class: Basics
  • Class: Intermediate
  • Class: Advanced
  • DOM: Basics
  • DOM: Intermediate
  • DOM: Advanced
  • Events: Basics
  • Events: Intermediate
  • Events: Advanced
  • Async JavaScript
  • Promise
  • Async / Await
  • Fetch API
  • JSON
  • Modules
  • Browser Storage
  • Event Loop Deep
  • Prototype Chain
  • Iterators & Generators
  • WeakMap, WeakSet, Proxy
  • Error Handling
  • Practice Problems
  • Mini Projects
  • Basics
  • Functions & Scope
  • Types & Syntax
  • Arrays & Objects
  • Advanced
  • Functional Programming
  • Objects & Symbols
  • Async Deep Dive
  • Modern JavaScript
  1. Docs
  2. JavaScript
  3. JavaScript Objects: Intermediate (অবজেক্ট)
JavaScriptIntermediate

JavaScript Objects: Intermediate (অবজেক্ট)

Object method ও this, shorthand, computed key, spread, destructuring, array of objects, reference, Object.assign — বাংলায়।

20টি অংশবাংলা ভাষায়

প্রথমে object-এর ভিত্তি জানা হলো। এবার object-কে দিয়ে বাস্তব কাজ — method, destructuring, spread, array of objects — নিয়ে আলোচনা।

Object-এর মেথড ও this

const product = {
  name: "কীবোর্ড",
  price: 1500,
  discountedPrice() {
    return this.price * 0.9;
  },
};

console.log(product.discountedPrice()); // 1350

object-এর ভেতরের function-কে method বলে। মেথডের ভেতরে this দিয়ে নিজের object-এর property উল্লেখ করা হয় — এখানে this.price।

Shorthand ও computed key

const name = "আনামুল";
const age = 28;

// Shorthand — key আর ভেরিয়েবলের নাম এক হলে
const user = { name, age };
console.log(user); // { name: "আনামুল", age: 28 }

// Computed key — ভেরিয়েবল/expression-এর মান দিয়ে key
const keyName = "city";
const info = { [keyName]: "ঢাকা" };
console.log(info); // { city: "ঢাকা" }

Spread (...) ব্যবহার

const base = { id: 1, name: "মোবাইল" };
const full = { ...base, price: 15000 };

console.log(full); // { id: 1, name: "মোবাইল", price: 15000 }

// পরের key আগেরটা override করে
const merged = { ...base, name: "স্মার্টফোন" };
console.log(merged.name); // "স্মার্টফোন"

Destructuring

const user = { name: "আনামুল", age: 28, city: "ঢাকা" };

const { name, city } = user;
const { age = 0 } = user; // default value

console.log(name); // আনামুল
console.log(city); // ঢাকা

// নতুন নামে নিতে
const { name: fullName } = user;
console.log(fullName); // আনামুল
// Rest — বাকিগুলো আলাদা object
const user = { name: "আনামুল", age: 28, city: "ঢাকা" };
const { name, ...rest } = user;
console.log(rest); // { age: 28, city: "ঢাকা" }

Objects-এর array

const products = [
  { id: 1, name: "মোবাইল", price: 15000 },
  { id: 2, name: "ল্যাপটপ", price: 65000 },
  { id: 3, name: "হেডফোন", price: 2000 },
];

// Destructuring সহ for...of
for (const { name, price } of products) {
  console.log(name, price);
}

// ফিল্টার + map একসাথে
const names = products.filter(p => p.price < 10000).map(p => p.name);
console.log(names); // ["হেডফোন"]

Object.assign

const target = { a: 1 };
Object.assign(target, { b: 2 }, { c: 3 });

console.log(target); // { a: 1, b: 2, c: 3 }

// শুধু copy-র জন্য spread-ই যথেষ্ট:
const copy = { ...target };

Reference একই object

const a = { name: "আনামুল" };
const b = a; // একই object-এর দিকে তাকায়
b.age = 28;

console.log(a); // { name: "আনামুল", age: 28 } — a-ও বদলে গেল
console.log(a === b); // true

ব্যবহারিক দিক: দুটি object-কে === দিয়ে তুলনা করলে সম্পূর্ণ equal হবে না — reference তুলনা হয়, মান নয়।

কৌশলকাজ
methodobject-এর ভেতরের function (this দিয়ে property)
shorthand{ name } — key: value গিয়ে লেখা
computed key{ [keyVar]: value }
spreadcopy/merge — { ...obj }
destructuringconst { a, b } = obj — property খুলে নেওয়া
Object.assignএকাধিক object merge
Deep copy নয়

{ ...obj } বা Object.assign shallow copy — ভেতরের nested object/array আগের reference-ই থাকে। deep copy দরকার হলে advanced chapter দেখুন।

শেষ প্যারায় নিজে practice করুন — কোড কপি করে নিজের এডিটরে চালিয়ে দেখুন।
আগেরJavaScript Objects: Basics (অবজেক্ট)পরেরJavaScript Objects: Advanced (অবজেক্ট)
এই পেজে
Tech Tutor

বাংলায় ওয়েব ডেভেলপমেন্ট ডকুমেন্টেশন শিখুন — ধাপে ধাপে।

Homeসব ডকুমেন্টেশনQuick Startআমার নোটস

© 2026 Tech Tutor. বাংলায় শিখুন, বাংলায় গড়ুন।

mdanamolhasan1998@gmail.com