• Home
  • Learn
    • Offline Courses
    • Online Courses
    • Web Development
    • Mobile App Development
    • Software Engineering
    • Graphic Design
    • Soft Skills
  • Blog
  • Events
  • About Us
  • Contact
KlassroomKlassroom
  • Home
  • Learn
    • Offline Courses
    • Online Courses
    • Web Development
    • Mobile App Development
    • Software Engineering
    • Graphic Design
    • Soft Skills
  • Blog
  • Events
  • About Us
  • Contact
    • RegisterLogin

ওয়েব ডেভেলপমেন্ট

  • Home
  • Blog
  • ওয়েব ডেভেলপমেন্ট
  • “use-strict” কি এবং কেন ব্যবহার করবো?

“use-strict” কি এবং কেন ব্যবহার করবো?

  • Posted by Saroar Hossain Shahan
  • Categories ওয়েব ডেভেলপমেন্ট, জাভাস্ক্রিপ্ট, ফ্রন্টএন্ড ডেভেলপমেন্ট, ব্যাকএন্ড ডেভেলপমেন্ট
  • Date July 26, 2018
  • Comments 2 comments

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

“use strict” ডিরেক্টিভঃ

“use strict” মোডে আমাদের কোড এক্সিকিউট করতে হলে আমাদেরকে “use strict” ডিরেক্টিভ ব্যবহার করতে হবে। এটি একটি এক্সপ্রেশন মাত্র। এটি জাভাস্ক্রিপ্টের ১.৮.৫ (ইএস৫) থেকে সাপোর্ট করে।

“use strict” এর ব্যবহারঃ

“use strict” ডিরেক্টিভকে আমরা দুইভাবে ব্যবহার করতে পারি। গ্লোবাল ডিক্লারেশন হিসাবে এবং ফাংশন ডিক্লারেশন হিসাবে।

গ্লোবাল ডিক্লারেশনঃ

যখন আমরা গ্লোবাল ডিক্লারেশন হিসাবে “use strict” ব্যবহার করি, তখন ঐ পেজের সমস্ত জাভাস্ক্রিপ্ট কোড স্ট্রিক মোডে এক্সিকিউট হয়।

উদাহরনঃ

JavaScript
1
2
3
"use strict";
 
console.log("Hello JavaScript");

ফাংশন ডিক্লারেশনঃ

যখন আমরা ফাংশন ডিক্লারেশন হিসাবে “use strict” ব্যবহার করি, তখন ফাংশনের ভিতরের সমস্ত জাভাস্ক্রিপ্ট কোড স্ট্রিক মোডে এক্সিকিউট হয়। ফাংশনের বাহিরে সব কোড নর্মাল মোডে এক্সিকিউট হয়।

1
2
3
4
5
(function() {
    "use strict";
    
    console.log("Hello JavaScript");
})();

অনেক হল জ্ঞান দেওয়া-নেওয়া 😛 এবার চলেন কিছু উদাহরণ দেখি।

উদাহরন – ১ঃ

আপনি জাভাস্ক্রিপ্টে ভেরিয়েবল কি-ওয়ার্ড ডিক্লেয়ার না করেও কাজ করতে পারবেন। কারণ আমরা জানি জাভাস্ক্রিপ্টে ভেরিয়েবলের নামের আগে ভেরিয়েবল কি-ওয়ার্ড ব্যবহার না করলে এটি বাই-ডিফল্ট উইন্ডো অবজেক্টের আন্ডারে এক্সিকিউট হয়।

JavaScript
1
2
3
num = 10;
 
console.log(num); // output will 10

একই কোড যখন আমরা “use strict” ব্যবহার করে এক্সিকিউট করবো, আমরা একটা Uncaught ReferenceError: num is not defined পাবো।

JavaScript
1
2
3
4
5
"use strict";
    
num  = 10;
 
console.log(num); // output will Uncaught ReferenceError: num is not defined

উদাহরন-২ঃ

জাভাস্ক্রিপ্টে আমরা রিজার্ভড কি-ওয়ার্ডগুলো ব্যবহার করতে পারি ভেরিয়েবলের নাম হিসাবে।

JavaScript
1
2
3
var let = 10;
 
console.log(let); // Output will 10

কিন্তু “use strict” মোডে এটি সম্ভব নয়। কারণ এটি ইএস৬ এর জন্যে একটি রিজার্ভড কি-ওয়ার্ড।

JavaScript
1
2
3
4
"use strict";
var yield = 10;
 
console.log(yield); output will Uncaught SyntaxError: Unexpected strict mode reserved word

কিছু রিজার্ভড কি-ওয়ার্ডঃ

  • abstract
  • instanceof
  • super
  • static
  • package
  • const
  • implements
  • with
  • private
  • protected

উদাহরন – ৩ঃ 

ফাংশনের ভিতরে “this” এর ভ্যালু সব সময় উইন্ডো অবজেক্টক হয়।

JavaScript
1
2
3
4
5
6
function show() {
 
    console.log(this);
}
 
show();

কিন্তু “use strict” মোডে ফাংশনের ভিতরে “this” এর ভ্যালু undefined হবে।

JavaScript
1
2
3
4
5
6
7
"use strict";
 
function show() {
    console.log(this); // output will undefined
}
 
show();

 

এই রকম আরও অনেক ব্যবহারের ক্ষেত্রে আছে যেটি আপনারা একটু কষ্ট করে নিজ দায়িত্বে দেখে নিবেন। যাইহোক, যেহেতু জাভাস্ক্রিপ্টের জন্যে নির্দিষ্ট কোন ডকুমেন্টস নেই, তাই “use strict” ব্যবহার করলে আমরা আমাদের কোডের ডিবাগ করতে সুবিধা হবে। কারণ যদি আমরা কোন ভুল সিনট্যাক্স ব্যবহার করি, জাভাস্ক্রিপ্ট আমাদেরকে ইরর থ্রো করবে। যেটি জাভাস্ক্রিপ্ট সাধরণত করে না। আশা করি, ব্যাপারটা সবাই বুঝতে পারছেন। আর পারবেনই বা কেন? সিম্পল হিসাব, জাভাস্ক্রিপ্ট জিন্দাবাদ 😛

যদি কোন মন্তব্য থাকে তাহলে কমেন্ট বক্সে একটা কমেন্ট করে দিবেন। তাহলে সবাইকে আগামী পর্বের আমন্ত্রণ জানিয়ে আজ এই এখানেই শেষ করছি। সবাই ভাল থাকবেন। আল্লাহ্‌ হাফেজ।

 

Tag:strict mode, use strict, জাভাস্ক্রিপ্ট

  • Share:
author avatar
Saroar Hossain Shahan
একজন স্বপ্নবাজ, স্বাধীনচেতা, ডানপিটে এবং টেক-লাভার মানুষ। ভালোবাসি স্বপ্ন দেখতে। ভালোবাসি নতুন কিছু সম্পর্কে জানতে। তার থেকে বেশি ভালোবাসি নিজের অর্জিত জ্ঞানটুকু সবার মাঝে ছড়িয়ে দিতে। ইচ্ছে করে বেঁচে থাতে কিন্তু তা সম্ভব নয়। কারণ, এই পৃথিবীতে খুব অল্প সময়ের জন্যে এসেছি। এই সুন্দর পৃথিবীতে একটু বেশি সময় বেঁচে থাকার জন্যেই কিছু রেখে যাওয়ার চেষ্টা। তাই যখনই সময় পাই লিখতে বসে যাই।

Previous post

জাভাস্ক্রিপ্টে Call(), Apply() এবং Bind() মেথড
July 26, 2018

Next post

রিঅ্যাক্টঃ কি, কেন এবং কিভাবে?
August 8, 2018

You may also like

php-thumb-3
পিএইচপি(PHP) নিয়ে যত কথা। পর্ব — ৮ [ পিএইচপি অপারেটর ]
25 September, 2018
javascript
জাভাস্ক্রিপ্টে primitive এবং reference টাইপ ডাটার মাঝে পার্থক্য
28 August, 2018
php-thumb-3
পিএইচপি(PHP) নিয়ে যত কথা। পর্ব — ৭ [ পিএইচপি String ডেটা-টাইপ]
12 August, 2018

    2 Comments

  1. Nuruzzaman
    July 26, 2018
    Reply

    Nice. Carry on.

    • Saroar Hossain Shahan
      July 26, 2018
      Reply

      Thanks 🙂

Leave A Reply Cancel reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

ব্লগ

  • এন্ড্রয়েড (1)
  • ওয়েব ডেভেলপমেন্ট (27)
  • গাল্প (Gulp) (1)
  • জাভাস্ক্রিপ্ট (18)
  • পিএইচপি (8)
  • ফ্রন্টএন্ড ডেভেলপমেন্ট (9)
  • ব্যাকএন্ড ডেভেলপমেন্ট (9)
  • মার্কআপ ল্যাঙ্গুয়েজ (1)
  • মোবাইল অ্যাপ ডেভেলপমেন্ট (1)

Featured Courses

Demystifying Linux (লিনাক্স ও শেল স্ক্রিপ্টিং হাতেখড়ি)

Demystifying Linux (লিনাক্স ও শেল স্ক্রিপ্টিং হাতেখড়ি)

৳ 2,500.00
Learn More

Copyright © Lets Learn Coding Ltd. 2018

Login with your site account

Lost your password?

Not a member yet? Register now

Register a new account

Are you a member? Login now