জাভাস্ক্রিপ্ট হল একটি Object Oriented Programming (OOP). অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং ল্যাঙ্গুয়েজ বলতে বোঝায় যেখানে আমরা, আমাদের প্রয়োজন অনুযায়ী অবজেক্ট এবং ভেরিয়েবল টাইপ তৈরি করতে পারি।
জাভাস্ক্রিপ্টকে জাভার মত স্বয়ংসম্পূর্ণ অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং ল্যাঙ্গুয়েজ বলা যায় না। জাভাস্ক্রিপ্টকে তৈরি করা হয়েছে শুধুমাত্র সাধারণ অবজেক্ট ভিত্তিক নমুনা রুপে। জাভাস্ক্রিপ্ট এর নিজস্ব built-in অবজেক্ট রয়েছে, তাছাড়া জাভাস্ক্রিপ্টে custome অবজেক্ট তৈরি করা যায়। আবার অবজেক্টের সাথে সম্পর্কযুক্ত ফাংশনও থাকতে পারে যা মেথড নামে পরিচিত।
একটি প্রোগ্রামিং ভাষাকে Object Oriented Programming বলা যাবে যদি তার নিচের মত 4টি বৈশিষ্ট্য থাকে -
জাভাস্ক্রিপ্ট হল একটি অবজেক্ট নির্ভর ওয়েব প্রোগ্রামিং ভাষা। জাভাস্ক্রিপ্ট এর সকল কিছুই হল অবজেক্ট। ইংরেজি " Object " শব্দটির আক্ষরিক অর্থ হল " বস্তু ", জাভাস্ক্রিপ্টে অবজেক্ট অর্থ হল একটি বিশেষ ধরনের ডাটা যার প্রোপার্টি এবং মেথড রয়েছে। সকল জাভাস্ক্রিপ্ট অবজেক্ট এরই প্রোপার্টি এবং মেথড রয়েছে। জাভাস্ক্রিপ্টে আমরা প্রয়োজন অনুযায়ী অবজেক্ট এবং ভেরিয়েবল টাইপ তৈরি করতে পারি। প্রোগ্রামিং এর কাজ গুলো জাভাস্ক্রিপ্ট অবজেক্ট এর প্রোপার্টি এবং মেথড ব্যবহার করে করে করা হয়।
জাভাস্ক্রিপ্ট অবজেক্ট এর সাথে কত গুলো মান বা value ব্যবহার করা হয়। এই সকল মান বা value গুলোকে জাভাস্ক্রিপ্ট অবজেক্ট প্রোপার্টি বলা হয়। নিচে জাভাস্ক্রিপ্ট অবজেক্ট প্রোপার্টির সিনট্যাক্সটি দেখুন।
objectName.objectProparty = propartyValue;
জাভাস্ক্রিপ্ট অবজেক্ট মেথড হল এমন কত গুলো কার্যক্রম, যা অবজেক্ট এর ওপর সম্পাদিত হয়। নিচে জাভাস্ক্রিপ্ট অবজেক্ট মেথড এর সিনট্যাক্স দেখুন।
objName.methodName();
জাভাস্ক্রিপ্টে 3টি পদ্ধতিতে কোন অবজেক্ট তৈরি করা যায়, এগুলো হল নিম্নরূপ -
" new " কিওয়ার্ড ব্যবহার করে জাভাস্ক্রিপ্টে সরাসরি অবজেক্ট তৈরি করা যায়। নিচে " new " কিওয়ার্ড ব্যবহার করে অবজেক্ট তৈরির সিনট্যাক্স দেখুন।
var objectname=new Object();
এই ক্ষেত্রে আমাদের আর্গুমেন্ট ব্যবহার করে ফাংশন তৈরি করতে হবে, প্রতিটি আর্গুমেন্ট এর মান বা value চলমান অবজেক্ট এর ওপর " this " কিওয়ার্ড ব্যবহার করে নির্ধারণ করতে হবে। এই কিওয়ার্ডটি চলমান অবজেক্টকে নির্দেশ করে।
অবজেক্ট literal ব্যবহার করে জাভাস্ক্রিপ্ট অবজেক্ট তৈরি করার সিনট্যাক্স নিচে দেখুন।
object={property1:value1,property2:value2.....propertyN:valueN}
এখানে দেখুন, জাভাস্ক্রিপ্ট অবজেক্ট এর প্রোপার্টি গুলোর মান বা value কোলন অর্থাৎ " : " ছিনহ ব্যবহার করে নির্ধারণ করা হয়েছে এবং প্রতিটি প্রোপার্টি এবং মানের জোরাকে কমা অর্থাৎ " , " ছিনহ ব্যবহার করে আলাদা করা হয়েছে। নিচে অবজেক্ট literal ব্যবহার করে একটি জাভাস্ক্রিপ্ট অবজেক্ট তৈরি করার উদাহরণ দেখুন।
<script> emp={id:102,name:"Shyam Kumar",salary:40000} document.write(emp.id+" "+emp.name+" "+emp.salary); </script>
জাভাস্ক্রিপ্ট অবজেক্টকে ২টি ভাগে ভাগ করা হয়। এগুলো হল নিম্নরুপ -
1) বিল্ট-ইন-অবজেক্ট এবং
2) ইউজার ডিফাইন অবজেক্ট।
নিচে বিল্ট-ইন-অবজেক্ট এবং ইউজার ডিফাইন অবজেক্ট সম্পর্কে বিস্তারিত দেখুন।
বিল্ট-ইন-অবজেক্ট -
জাভাস্ক্রিপ্টে পূর্ব থেকেই কিছু অবজেক্ট তৈরি করা আছে, এগুলোকে বিল্ট-ইন-অবজেক্ট বলা হয়। এই বিল্ট-ইন অবজেক্ট গুলো হল স্ট্রিং অবজেক্ট, অ্যারে অবজেক্ট, বুলিয়ান অবজেক্ট,
ডেট অবজেক্ট, ম্যাথ অবজেক্ট, RegExp, নাম্বার এবং গ্লোবাল অবজেক্ট। পরবর্তী অধ্যায় গুলোতে এগুলো সম্পর্কে বিস্তারিত আলোচনা করা হয়েছে।
ইউজার ডিফাইন অবজেক্ট -
বেশ কয়েকটি পদ্ধতিতে ইউজার ডিফাইন অবজেক্ট তৈরি করা যায়, এক্ষেত্রে, প্রথম জাভাস্ক্রিপ্ট অবজেক্ট এর নাম উল্লেখ করতে হয়। তারপর অবজেক্ট প্রোপার্টি এবং প্রোপার্টি এর মান বা value
দিতে হয়। নিচে জাভাস্ক্রিপ্ট এর ইউজার ডিজাইন অবজেক্ট এর সিনট্যাক্স দেখুন।
objectName={property1 : value1, property2 : value2, property3 : value3,..,propertyN:valueN}