জাভাস্ক্রিপ্ট একটি অবজেক্ট-ওরিয়েন্টেড প্রোগ্রামিং (OOP) ভাষা। একটি প্রোগ্রামিং ভাষাকে অবজেক্ট-ওরিয়েন্টেড বলা যায় যদি এটি ডেভেলপারদের চারটি মৌলিক ক্ষমতা প্রদান করে:
- এনক্যাপসুলেশন (Encapsulation) − ডেটা বা মেথডসহ সম্পর্কিত তথ্য একটি অবজেক্টের সাথে সংরক্ষণ করার ক্ষমতা।
- এগ্রিগেশন (Aggregation) − একটি অবজেক্টের ভিতরে অন্য একটি অবজেক্ট সংরক্ষণ করার ক্ষমতা।
- ইনহেরিট্যান্স (Inheritance) − একটি ক্লাসের অন্য ক্লাস (বা একাধিক ক্লাস) এর প্রোপার্টি এবং মেথডের উপর নির্ভর করার ক্ষমতা।
- পলিমরফিজম (Polymorphism) − একটি ফাংশন বা মেথড লিখার ক্ষমতা যা বিভিন্নভাবে কাজ করে।
অবজেক্টগুলি অ্যাট্রিবিউটಗಳಿಂದ গঠিত। যদি একটি অ্যাট্রিবিউটে ফাংশন থাকে, তবে সেটিকে অবজেক্টের একটি মেথড বলে, অন্যথায় এটি একটি প্রোপার্টি।