আপনি switch
case
যখন একই ক্ষেত্রে একটি বা বি পরীক্ষা করার দরকার পড়ে আপনি কীভাবে ব্যবহার করবেন ?
switch (pageid) {
case "listing-page" || "home-page":
alert("hello");
break;
case "details-page":
alert("goodbye");
break;
}
আপনি switch
case
যখন একই ক্ষেত্রে একটি বা বি পরীক্ষা করার দরকার পড়ে আপনি কীভাবে ব্যবহার করবেন ?
switch (pageid) {
case "listing-page" || "home-page":
alert("hello");
break;
case "details-page":
alert("goodbye");
break;
}
উত্তর:
আপনি পড়ার মাধ্যমে ব্যবহার করতে পারেন:
switch (pageid)
{
case "listing-page":
case "home-page":
alert("hello");
break;
case "details-page":
alert("goodbye");
break;
}
যেহেতু অন্যান্য উত্তরগুলি এটি কেন কাজ করে তা ব্যাখ্যা না করে কীভাবে এটি করতে হবে তা ব্যাখ্যা করেছে:
যখন কার্যকর হয় switch
, এটি প্রথম মিলে যাওয়া case
বিবৃতিটি সন্ধান করে এবং তারপরে স্যুইচের পরে কোডের প্রতিটি লাইন সম্পাদন করে যতক্ষণ না এটি break
বিবৃতি বা শেষের switch
(বা একটি return
বিবৃতি পুরোযুক্ত ফাংশনটি ছেড়ে যাওয়ার জন্য) আঘাত করে। আপনি যখন ইচ্ছাকৃতভাবে বাদ দিবেন তখন break
পরবর্তী কোডের অধীনে কোডটি case
কার্যকর হয়ে যায় যা ফলের মাধ্যমে বলা হয় । সুতরাং ওপি প্রয়োজনীয়তার জন্য:
switch (pageid) {
case "listing-page":
case "home-page":
alert("hello");
break;
case "details-page":
alert("goodbye");
break;
}
break
বিবৃতি অন্তর্ভুক্ত করা ভুলে যাওয়া মোটামুটি প্রচলিত কোডিং ভুল এবং switch
আপনার প্রত্যাশার মতো কাজ না করে যদি আপনার প্রথম দেখা উচিত । সেই কারণে কিছু লোক উদ্দেশ্য ভেদে যখন ব্রেক স্টেটমেন্টগুলি বাদ দেওয়া হয়েছে তখন তা পরিষ্কার করে "ফলের মাধ্যমে" বলতে একটি মন্তব্য করতে পছন্দ করে। আমি এটি নীচের উদাহরণে এটি করি যেহেতু এটি কিছুটা জটিল এবং এটি দেখায় যে কিছু ক্ষেত্রে কীভাবে কোডগুলি কার্যকর করতে কোড অন্তর্ভুক্ত করতে পারে সেগুলি পড়ার আগে:
switch (someVar) {
case 1:
someFunction();
alert("It was 1");
// fall through
case 2:
alert("The 2 case");
// fall through
case 3:
// fall through
case 4:
// fall through
case 5:
alert("The 5 case");
// fall through
case 6:
alert("The 6 case");
break;
case 7:
alert("Something else");
break;
case 8:
// fall through
default:
alert("The end");
break;
}
আপনি (optionচ্ছিকভাবে) একটি কেসও অন্তর্ভুক্ত করতে পারেন default
, যা অন্য কোনও মামলার সাথে মেলে না তবে মৃত্যুদন্ড কার্যকর করা হবে - যদি আপনি একটি default
এবং কোনও মামলার মিল না রাখেন তবে কিছুই ঘটে না। আপনি (allyচ্ছিকভাবে) ডিফল্ট ক্ষেত্রে যেতে পারেন।
সুতরাং আমার দ্বিতীয় উদাহরণে যদি someVar
এটি 1 হয় তবে এটি কল করবে someFunction()
এবং তারপরে আপনি চারটি সতর্কতা দেখতে পাবেন কারণ এর মধ্যে বেশ কয়েকটি ক্ষেত্রে সতর্কতা রয়েছে। কি someVar
3, 4 অথবা 5 আপনি দুই সতর্কতা দেখতে না হয়। যদি someVar
7 হয় তবে আপনি "অন্য কিছু" দেখতে পাচ্ছেন এবং যদি এটি 8 বা অন্য কোনও মান হয় তবে আপনি "শেষ" দেখতে পাবেন।
আপনি এটি স্যুইচ করতে হবে!
switch (true) {
case ( (pageid === "listing-page") || (pageid === ("home-page") ):
alert("hello");
break;
case (pageid === "details-page"):
alert("goodbye");
break;
}
ভুলে যান switch
এবং break
, সাথে খেলতে দিন if
। এবং পরিবর্তে জোর দেওয়া
if(pageid === "listing-page" || pageid === "home-page")
কেসগুলি সহ বেশ কয়েকটি অ্যারে তৈরি করতে এবং এটি অ্যারে.প্রোটোটাইপ.কমডেস () দিয়ে পরীক্ষা করে দেখুন
var caseA = ["listing-page", "home-page"];
var caseB = ["details-page", "case04", "case05"];
if(caseA.includes(pageid)) {
alert("hello");
}
else if (caseB.includes(pageid)) {
alert("goodbye");
}
else {
alert("there is no else case");
}