`Var` ব্যবহার করে বা না
আপনার var
বক্তব্যটির সাথে কোনও পরিবর্তনশীল প্রবর্তন করা উচিত , অন্যথায় এটি বিশ্ব ব্যাপ্তিতে চলে আসে।
এটি উল্লেখযোগ্য যে কঠোর মোডে ( "use strict";
) অঘোষিত ভেরিয়েবল অ্যাসাইনমেন্ট নিক্ষেপ করেReferenceError
।
বর্তমানে জাভাস্ক্রিপ্টের কোনও ব্লক স্কোপ নেই। ক্রকফোর্ড স্কুল আপনাকে ফাংশন বডির শুরুতে বিভিন্ন বক্তব্য রাখতে শেখায় , অন্যদিকে ডজোর স্টাইল গাইড পড়তে পারে যে সমস্ত ভেরিয়েবলগুলি সম্ভব ক্ষুদ্রতম ক্ষেত্রেই ঘোষণা করা উচিত । ( জাভাস্ক্রিপ্ট ১.7 এ প্রবর্তিত let
বিবৃতি এবং সংজ্ঞা ECMAScript মানের অংশ নয়))
নিয়মিত ব্যবহৃত বস্তুর বৈশিষ্ট্যগুলি স্থানীয় ভেরিয়েবলগুলিতে আবদ্ধ করা ভাল অনুশীলন কারণ পুরো স্কোপ চেইনটি দেখার চেয়ে এটি দ্রুত। ( চরম কর্মক্ষমতা এবং কম মেমরির ব্যবহারের জন্য জাভাস্ক্রিপ্ট অনুকূলকরণ দেখুন See )
ফাইলে বা একটি function (ফাংশন () {...}) () `এ জিনিস সংজ্ঞায়িত করা হচ্ছে`
আপনার কোডের বাইরে যদি আপনার অবজেক্টগুলিতে পৌঁছানোর দরকার না হয় তবে আপনি নিজের পুরো কোডটি একটি ফাংশন এক্সপ্রেশন-এ মোড়াতে পারেন - একে মডিউল প্যাটার্ন বলা হয় called এর কার্যকারিতা সুবিধাগুলি রয়েছে এবং এটি আপনার কোডকে একটি উচ্চ স্তরে মিনিফড এবং স্পষ্ট করতে দেয়। আপনি এটিও নিশ্চিত করতে পারেন যে এটি বিশ্বব্যাপী নেমস্পেসকে দূষিত করবে না। জাভাস্ক্রিপ্টে মোড়ানো কার্যাদি আপনাকে দিক-ভিত্তিক আচরণ যুক্ত করতে দেয়। বেন চেরির মডিউল প্যাটার্ন সম্পর্কিত একটি গভীর নিবন্ধ রয়েছে ।
`এই` বা না ব্যবহার করে
আপনি যদি জাভাস্ক্রিপ্টে সিউডো-শাস্ত্রীয় উত্তরাধিকার ব্যবহার করেন তবে আপনি খুব কমই ব্যবহার এড়াতে পারবেন this
। আপনি যে উত্তরাধিকারের ধরণটি ব্যবহার করেন এটি স্বাদের বিষয়। অন্যান্য ক্ষেত্রে, জাভা স্ক্রিপ্ট উইজেটগুলিতে "এটি" ছাড়াই পিটার ম্যাকাক্সের নিবন্ধটি পরীক্ষা করুন ।
`ফাংশন মাইনেম ()` বা `মাইনেম = ফাংশন (); Using ব্যবহার করে`
function myname()
এটি একটি ফাংশন ডিক্লেয়ারেশন এবং myname = function();
ভেরিয়েবলকে নির্ধারিত একটি ফাংশন এক্সপ্রেশন myname
। পরবর্তী রূপটি ইঙ্গিত দেয় যে ফাংশনগুলি প্রথম শ্রেণীর অবজেক্টস এবং আপনি ভেরিয়েবলের মতো এগুলি দিয়ে কিছু করতে পারেন। তাদের মধ্যে পার্থক্যটি হ'ল সমস্ত ফাংশন ঘোষণাগুলি সুযোগের শীর্ষে উত্তোলন করা হয়, যা কিছু ক্ষেত্রে গুরুত্বপূর্ণ হতে পারে। অন্যথায় তারা সমান। function foo()
একটি শর্টহ্যান্ড ফর্ম। উত্তোলন সম্পর্কিত আরও বিবরণ জাভাস্ক্রিপ্ট স্কোপিং এবং উত্তোলন নিবন্ধে পাওয়া যাবে।
অবজেক্টের শরীরে পদ্ধতিগুলি নির্ধারণ করা বা "প্রোটোটাইপ" ব্যবহার করে
এটা আপনার উপর নির্ভর করছে. জাভাস্ক্রিপ্টের চারটি অবজেক্ট-ক্রিয়েশন প্যাটার্ন রয়েছে: সিউডো-ক্লাসিকাল, প্রোটোটাইপিকাল, ফাংশনাল এবং পার্টস ( ক্রকফোর্ড, ২০০৮ )। প্রত্যেকেরই এর পক্ষে মতামত রয়েছে, ক্রকফোর্ড তার ভিডিও আলোচনায় দেখুন বা আনন ইতিমধ্যে প্রস্তাবিত হিসাবে তাঁর গুড পার্টস বইটি পাবেন ।
ফ্রেমওয়ার্ক
আমি আপনাকে কয়েকটি জাভাস্ক্রিপ্ট ফ্রেমওয়ার্কগুলি বেছে নেওয়ার পরামর্শ দিচ্ছি, তাদের সম্মেলনগুলি এবং স্টাইলটি অধ্যয়ন করুন এবং সেই পদ্ধতিগুলি এবং নিদর্শনগুলি সন্ধান করুন যা আপনার পক্ষে সবচেয়ে উপযুক্ত। উদাহরণস্বরূপ, ডোজো টুলকিট অবজেক্ট-ভিত্তিক জাভাস্ক্রিপ্ট কোড লিখতে একটি শক্তিশালী কাঠামো সরবরাহ করে যা একাধিক উত্তরাধিকারকে সমর্থন করে।
প্যাটার্নস
শেষ অবধি, এখানে একটি ব্লগ রয়েছে যা সাধারণ জাভাস্ক্রিপ্ট নিদর্শন এবং অ্যান্টি-নিদর্শনগুলি অন্বেষণ করতে উত্সর্গীকৃত । এছাড়াও জাভাস্ক্রিপ্টের জন্য কোনও কোডিং মান আছে কিনা তা পরীক্ষা করে দেখুন? স্ট্যাক ওভারফ্লোতে