mozilla
আপনার অনুসন্ধান ফলাফল

    জাভাস্ক্রিপ্ট রেফারেন্স

    এই রেফারেন্স সম্পর্কে...

    আপনি কি পারবেন জাভাস্ক্রিপ্ট শিখতে? যদি C অথবা ভিজুয়াল-বেসিক টাইপের প্রোগ্রামিং ভাষার সাথে মোলাকাত থাকে তাহলে ভাল, কিন্তু আবশ্যকীয় না।

    বড়-সর পরিবেশ, যেমন  ব্রাউজার, সার্ভারের স্ক্রিপ্ট অথবা এই ধরণের পরিবেশে জাভাস্ক্রিপ্ট চলবে এমনটাই ধরে নিয়ে জাভাস্ক্রিপ্ট ডিজাইন করা হয়েছে। এই রেফারেন্সের বেশিরভাগ অংশেই তাই আমরা কোন নির্দিষ্ট পরিবেশের জন্য কোন কিছু দেখাইনি। যেমন, আমরা একটা ফাংশন println আছে ধরে নিয়েছি -আর এই ফাংশন টা এই রেফারেন্সের বিভিন্ন অংশে ব্যবহার করেছি, যদিও জাভাস্ক্রিপ্টে এই নামে কোন ফাংশন নাই! ব্রাউজারে যখন চলছে জাভাস্ক্রিপ্ট তখন আমরা এই println ফাংশনটাকে নিচের মত ধরে নিতে পারবঃ

    function println(string) {
      window.alert(string);
    }

    অন্যান্য পরিবেশে কিভাবে এই println কে ম্যাপ করবেন তা পাঠকের জন্য রেখে দিলাম!

    ফরম্যাটিং রীতিনীতি

    এই ডকুমেন্টটি যাতে ঠিকমত ব্যবহার করা যায় সেজন্যে সিন্ট্যাক্স বেশ বিষদভাবে দেখানো হয়েছে। এইসব সিন্ট্যাক্স-অংশে elipses(...) ছাড়া যা-কিছু বাকা হরফে (italicized) দেখানো হয় নাই তা হুবুহু ব্যবহার করতে হবে। ব্যবহারকারী যেসব নাম-ধাম ব্যবহার করবেন তা বাকা হরফে দেখানো হয়েছে। স্কয়ার ব্র্যাকেট ( [ আর ] ) এর মাঝে যা কিছু দেখিয়েছি সব ঐচ্ছিক। আর যদি কমা-দিয়ে-পৃথক-করা কোনকিছুর লিস্ট পাওয়া যায় তার অর্থ হল এই লিস্টের আইটেমগুলি ক্রমিক। আর প্রথম আইটেম ছাড়া লিস্টের বাকি সব হল ঐচ্ছিক। (যেমন "param1, param2, ..., paramN" এই লিস্টের শুধুমাত্র param1 আইটেমটা আবশ্যকীয়, বাকি সব ঐচ্ছিক।)

    জাভাস্ক্রিপ্টের ইতিহাস

    মজিলা যেসব নতুন ব্রাউজার প্রকাশ করে সেগুলোতে জাভাস্ক্রিপ্টের নতুন ভার্সন দেওয়া থাকে। মজিলার বিভিন্ন ভার্সনের ব্রাউজারে জাভাস্ক্রিপ্টের কোন ভার্সন দেওয়া ছিল নিচে তার একটা তালিকা দেওয়া আছে।

    যেই ব্রাউজারগুলোয় অন্ততঃ জাভাস্ক্রিপ্টের ১.৫ ভার্সন-ও নাই সেই সব ব্রাউজার বিলুপ্তপ্রায়, কারণ ১.৫ ছাড়া হয়েছিল সেই ১৯৫৩ সালে (থুক্কু ১৯৯৯ সালে)। ইতিহাস নিয়ে নাড়াচাড়া করার ইচ্ছা থাকলে ECMAScript এর উইকিপেডিয়া আর্টিকেল দেখুন।

     

    জাভাস্ক্রিপ্ট/ব্রাউজার সাপোর্ট তালিকা

    জাভাস্ক্রিপ্ট (SpiderMonkey) ভার্সন মজিলা রিলিজ Gecko ভার্সন
    JavaScript 1.5 Navigator 6.0, Mozilla Application Suite, Firefox 1.0 Gecko 0.6x-1.7
    JavaScript 1.6 Firefox 1.5 Gecko 1.8
    JavaScript 1.7 Firefox 2 Gecko 1.8.1
    JavaScript 1.8 Firefox 3 Gecko 1.9
    JavaScript 1.8.5 Firefox 4 Gecko 2.0
    JavaScript 1.8.6 Firefox 17 Gecko 17

    জাভাস্ক্রিপ্টের তথ্য পাবেন কোথায়?

    জাভাস্ক্রিপ্টের কোর ল্যাংগুয়েজ (বেশিরভাগ ক্ষেত্রে বিশুদ্ধ ECMAScript) ডকুমেন্টে যা যা আছেঃ

    জাভাস্ক্রিপ্ট ইশকুলের নতুন শিক্ষার্থীরা গাইডবই দিয়ে শুরু করতে পারেন। মোটামোটি দখল এসে যাওয়ার পর প্রত্যেকটা অবজেক্ট/ভাষাটির কন্সট্রাক্টস নিয়ে ধারণা শক্তপোক্ত করার জন্য রেফারেন্সে ডুব মারুন!

    গ্লোবাল অবজেক্ট

    ফাংশন ও ফাংশন স্কোপ

    স্টেটমেন্ট

    জাভাস্ক্রিপ্ট স্টেটমেন্ট এর মধ্যে কিওয়ার্ড থাকে, যা যথাযথ সিনট্যাক্স এর সাথে ব্যবহার করা হয়। একটি একক স্টেটমেন্ট এর মধ্যে একাধিক লাইন থাকতে পারে। সেমিকোলন দিয়ে আলাদা করা হলে একাধিক স্টেটমেন্ট এক লাইনেই লেখা সম্ভব। এক্ষেত্রে একটি কিওয়ার্ড হবে না, কিওয়ার্ড এর একটি গ্রুপ হবে।

    অপারেটর এবং অন্যান্য কিওয়ার্ড

    জাভাস্ক্রিপ্টে এমন কিছু বিশেষ অপারেটর আছে, যেগুলো কোনো ক্যাটাগরিতেই পড়ে নাঃ

    গানিতিক অপারেটর সমূহ

    (+, -, *, /, %, ++, --, unary -, unary +)

    গানিতিক অপারেটর গুলো তাদের অপারেন্ড হিসেবে সাংখ্যিক মান গ্রহন করে (হয় আক্ষরিক মান অথবা ভ্যারিয়েবল ) এবং একক সাংখ্যিক ফলাফল প্রদান করে।

    অ্যাসাইনমেন্ট অপারেটর সমূহ

    (=, *=, /=, %=, +=, -=, <<=, >>=, >>>=, &=, ^=, |=)

    একটি অ্যাসাইনমেন্ট অপারেটর তার ডান পাশের মান, বাম পাশের অপারেন্ডে নিয়োগ করে।

    বিট ভিত্তিক অপারেটর সমূহ

    (&, |, ^, ~, <<, >>, >>>)

    বিট ভিত্তিক অপারেটর তাদের অপারেন্ড গুলোকে ৩২ বিটের (1 এবং 0) একেকটি সেট হিসেবে গণনা করে, এবং আদর্শ সাংখ্যিক ফলাফল দেয়।

    তুলনাকারী অপারেটর সমূহ

    (==, !=, ===, !==, >, >=, <, <=)

    একটি তুলনাকারী অপারেটর তার অপারেন্ড গুলোকে তুলনা করে, এবং সত্য হলে যৌক্তিক ফলাফল প্রদান করে।

    যৌক্তিক অপারেটর সমূহ

    (&&, ||, !)

    যৌক্তিক অপারেটর গুলো বিশেষভাবে বুলিয়ান (যৌক্তিক) মানের সাথে ব্যবহার করা হয়। এবং এগুলো সবসময় যৌক্তিক ফলাফল প্রদান করে।

    স্ট্রিং অপারেটর সমূহ

    (+ and +=)

    স্ট্রিং অপারেটর গুলো দুইটি স্ট্রিং এর মানকে একসাথে জুড়ে দেয়। এক্ষেত্রে দুইটি স্ট্রিং মিলে নতুন আরেকটি স্ট্রিং গঠন করে।

    সদস্য অপারেটর সমূহ

    (object.property and object["property"])

    সদস্য অপারেটর গুলো একটি অবজেক্টের প্রোপার্টি বা মেথডের এক্সেস প্রদান করে।

    বিশেষ অপারেটর সমূহ
    শর্তযুক্ত অপারেটর সমূহ

    (condition ? ifTrue : ifFalse)

    শর্তযুক্ত অপারেটর তার মধ্যে থাকা দুইটি মান থেকে শর্তের সত্যতা সাপেক্ষে যেকোনো একটি মান প্রদান করে।

    কমা অপারেটর

    (,)

    The comma operator allows multiple expressions to be evaluated in a single statement and returns the result of the last expression.

    ডিলিট অপারেটর

    (delete)

    The delete operator deletes a property from an object.

    in অপারেটর

    (in)

    The in operator determines whether an object has a given property.

    instanceof অপারেটর

    (instanceof)

    The instanceof operator determines whether an object is an instance of another object.

    new অপারেটর

    (new)

    The new operator creates an instance of a constructor.

    typeof অপারেটর

    (typeof)

    The typeof operator determines the type of a given object.

    void অপারেটর

    (void)

    The void operator discards an expression's return value.

    yield অপারেটর

    (yield)

    The yield operator determines what is returned in a generator by that generator's iterator.

    অপারেটরের প্রাধান্যতা
    Operator precedence defines the order in which operators are evaluated.
    কিওয়ার্ড
    get মডিফায়ার

    (get)

    The get modifier defines a property in an object literal to be a getter.

    set মডিফায়ার

    (set)

    The set modifier defines a property in an object literal to be a setter.

    function কিওয়ার্ড

    (function)

    The function keyword defines a function expression.

    this কিওয়ার্ড

    (this)

    The this keyword refers to the function's execution context.

    মন্তব্য

    E4X (extension)

    গ্লোবাল স্টেটমেন্ট সমুহঃ

    গ্লোবাল ফাংশন সমুহঃ

    গ্লোবাল কনস্ট্রাক্টরসঃ

    Appendix A - Reserved Words

    Appendix B - Deprecated Features

    ডকুমেন্ট ট্যাগ এবং অবদানকারী

    Contributors to this page: shafiul, badsha_eee, invisibl3_kngiht, Norbert, teoli
    সর্বশেষ হালনাগাদ করেছেন: teoli,