JavaScript Break

জাভাস্ক্রিপ্ট বিরতি বিবৃতি শিখুন

বিরতি বিবৃতি

বিরতি বিবৃতি লুপ এবং সুইচের "জাম্প আউট"।

বিরতি বিবৃতি একটি লুপ বা সুইচ বিবৃতি কার্যকর করা শেষ করে।

লুপ শুরু হয়

পুনরাবৃত্তি

বিরতি সম্মুখীন হয়

লুপ সম্পূর্ণ

loops মধ্যে বিরতি

যখন একটি লুপে বিরতির সম্মুখীন হয়, তখন লুপটি অবিলম্বে বন্ধ হয়ে যায়।

লুপ অনুসরণ করে বিবৃতিতে প্রোগ্রাম নিয়ন্ত্রণ স্থানান্তরিত হয়।

আর কোনো লুপ পুনরাবৃত্তি কার্যকর করা হয় না।

উদাহরণ

লুপ শেষ করুন (লুপ ভাঙুন) যখন লুপ কাউন্টার (i) 3 হয়:

for (let i = 0; i < 10; i++) {
  if (i === 3) { break; }
  text += "The number is " + i + "
"; } // এটি শুধুমাত্র 0, 1, 2 প্রিন্ট করবে

বিরতি ছাড়া

লুপ 0 থেকে 9 পর্যন্ত চলে

10টি পুনরাবৃত্তি

বিরতি দিয়ে

লুপ শুধুমাত্র 0 থেকে 2 পর্যন্ত চলে

3টি পুনরাবৃত্তি

সুইচ অন বিরতি

একটি সুইচ বিবৃতিতে, ম্যাচিং কেসটি কার্যকর করার পরে একটি বিরতি বিবৃতি সুইচ ব্লক থেকে প্রস্থান করে। বিরতি ছাড়াই, ফাংশনটি পরবর্তী কেস ব্লকে "ড্রপ" করে।

উদাহরণ

কাজের দিনের নাম গণনা করতে সপ্তাহের দিন সংখ্যা ব্যবহার করুন:

switch (new Date().getDay()) {
  case 0:
    day = "Sunday";
    break;
  case 1:
    day = "Monday";
    break;
  case 2:
    day = "Tuesday";
    break;
  case 3:
    day = "Wednesday";
    break;
  case 4:
    day = "Thursday";
    break;
  case 5:
    day = "Friday";
    break;
  case 6:
    day = "Saturday";
    break;
}

⚠️গুরুত্বপূর্ণ নোট:

সুইচ "পতন" প্রতিরোধ করার জন্য বিরতি কীওয়ার্ড গুরুত্বপূর্ণ। বিরতি ছাড়াই, কোডটি পরবর্তী কেস ব্লকগুলি (এবং যদি একটি থাকে তবে ডিফল্ট ব্লক) চালাতে থাকে যদিও তাদের মানগুলি অভিব্যক্তির সাথে মেলে না।

বিরতি ছাড়াই পড়ে যাওয়া সুইচ:

দিন সংখ্যা = 1; পাল্টান (দিনসংখ্যা) { কেস 1: console.log("সোমবার"); // বিরতি অনুপস্থিত! কেস 2: console.log("মঙ্গলবার"); বিরতি কেস 3: console.log("বুধবার"); বিরতি } // আউটপুট: "সোমবার" "মঙ্গলবার"

জাভাস্ক্রিপ্ট লেবেল

একটি লেবেল একটি বিবৃতি বা বিবৃতিগুলির ব্লকের একটি নাম দেয়, বিবৃতিগুলিকে প্রোগ্রাম প্রবাহ নিয়ন্ত্রণের জন্য নির্দিষ্ট করার অনুমতি দেয়, বিশেষ করে লুপগুলিতে।

সিনট্যাক্স

একটি লেবেল হল একটি শনাক্তকারী যার পরে একটি কমা (:)।

labelname: statement;

একটি লেবেল একটি বিবৃতি বা কোড ব্লকের আগে।

labelname: {
  statements
}

লেবেলযুক্ত বিরতি

সিনট্যাক্স

break labelname;

বিরতি বিবৃতি একটি লুপ বা ব্লক থেকে প্রস্থান করে এবং লেবেলযুক্ত বিবৃতিতে নিয়ন্ত্রণ স্থানান্তর করে।

অভ্যন্তরীণ বা বাইরের লুপগুলি থেকে নেস্টেড লুপগুলি প্রস্থান করার জন্য বিরতি বিবৃতি বিশেষভাবে কার্যকর।

উদাহরণ 1

লুপ 1 এর জন্য বিরতি:

let text = ""; loop1: for (আলো j = 1; j <5; j++) { loop2: for (আসুন i = 1; i <5; i++) { if (i === 3) { break loop1; } পাঠ্য += i; } } // ফলাফল: "12" (বাহ্যিক লুপও ভাঙা)

উদাহরণ 2

লুপ 2 এর জন্য বিরতি:

let text = ""; loop1: for (আলো j = 1; j <5; j++) { loop2: for (আসুন i = 1; i <5; i++) { if (i === 3) { break loop2; } পাঠ্য += i; } } // ফলাফল: "12121212" (শুধু অভ্যন্তরীণ লুপ ভাঙ্গা)

লেবেল সহ এবং ছাড়া বিরতি

বিরতির ধরন সিনট্যাক্স আবেদন ব্যাখ্যা
সরল বিরতি break; লুপ/সুইচ বর্তমান লুপ/সুইচ থেকে প্রস্থান করুন
লেবেলযুক্ত বিরতি break labelname; যেকোন কোড ব্লক নির্দিষ্ট লেবেলযুক্ত ব্লক থেকে প্রস্থান করুন

🎯গুরুত্বপূর্ণ নোট:

breakএবংcontinueএকমাত্র জাভাস্ক্রিপ্ট বিবৃতি যা কোডের একটি ব্লক থেকে "জাম্প আউট" করতে পারে। একটি কোড ব্লক হল { এবং } এর মধ্যে কোড ব্লক।

  • একটি লেবেল রেফারেন্স ছাড়া, বিরতি শুধুমাত্র একটি লুপ বা সুইচ থেকে বেরিয়ে আসতে পারে
  • লেবেল রেফারেন্স সহ, বিরতি কোডের যেকোনো ব্লক থেকে লাফ দিতে পারে

উদাহরণ

দ্বিতীয় গাড়ির পরে ব্লক থেকে প্রস্থান করুন:

const cars = ["BMW", "Volvo", "Saab", "Ford"];
list: {
  text += cars[0] + "
"; // সক্ষম টেক্সট += গাড়ি[1] + "
"; // সক্ষম বিরতি তালিকা; // ব্লক থেকে প্রস্থান করুন টেক্সট += গাড়ি[2] + "
"; // চলবে না টেক্সট += গাড়ি[3] + "
"; // চলবে না } // আউটপুট: "BMW
Volvo
"

ব্যবহারিক উদাহরণ

অনুসন্ধান বিরতি

যাক সংখ্যা = [1, 3, 5, 7, 9]; let searchFor = 5; let found = মিথ্যা; জন্য (সংখ্যার সংখ্যা যাক) { যদি (সংখ্যা === অনুসন্ধানের জন্য) { পাওয়া = সত্য; বিরতি // মান পাওয়া গেলে থামুন } }

নেস্টেড লুপ

outerLoop: for ( let i = 0; i < 3; i++) { for (আলো j = 0; j < 3; j++) { যদি (i === 1 && j === 1) { ব্রেক outerLoop; // উভয় লুপ থেকে প্রস্থান করুন } } }

ত্রুটি হ্যান্ডলিং

let data = [10, 20, "অবৈধ", 40]; যাক যোগফল = 0; জন্য (ডেটার মান যাক) { if (typeof value !== 'number') { console.log("অবৈধ ডেটা পাওয়া গেছে"); বিরতি // অবৈধ ডেটা পাওয়া গেলে থামুন } যোগফল += মান; }

অনুশীলন করুন

নিম্নলিখিত কোড বিবেচনা করুন:

const fruits = ['Apple', 'Banana', 'Cherry'];
let x = '';
myfavorite: {
  x = fruits[0];
  break myfavorite;
  x = fruits[1];
  x = fruits[2];
}
alert(x);

সতর্কবার্তার ফলে কী হবে?

Apple
✓ ঠিক আছে! একটি লেবেলযুক্ত বিরতি বিবৃতিmyfavoriteব্লক থেকে প্রস্থান করা হচ্ছে। প্রথম লাইনx = fruits[0]এক্সিকিউট করা হয়, যা এক্সকে 'অ্যাপল' বরাদ্দ করে। বিরতি ব্লকটি ভেঙে দেয়, তাই বাকি লাইনগুলি (x = fruits[1]এবংx = fruits[2]) বাস্তবায়িত হবে না। সতর্কতা(x) 'অ্যাপল' প্রদর্শন করে
Banana
✗ ভুল! বিরতি বিবৃতিmyfavoriteব্লক থেকে প্রস্থান করে এবংx = fruits[1]ট্যাক্স বলবৎ হবে না।x = fruits[0]এক্সকে 'অ্যাপল' বরাদ্দ করে শুধুমাত্র এক্সিকিউট করা হয়
Cherry
✗ ভুল! ব্রেক মডিউলx = fruits[2]লাইনের আগে ভেঙে যায়।x = fruits[0]'অ্যাপল' x-এ বরাদ্দ করার পরে, বিরতি বিবৃতি অবিলম্বে ব্লক থেকে প্রস্থান করে, বাকি কোডটি এড়িয়ে যায়