JavaScript හි continue වාක්ය ඛණ්ඩය
අඛණ්ඩව ලූපයක නව පුනරාවර්තනයක් ආරම්භ කරන continue වාක්ය ඛණ්ඩයද පවතී.
මෙම වාක්ය ඛණ්ඩය සමහර විට කේතය සරල කිරීම සඳහා ප්රයෝජනවත් විය හැකිය,
අතාත්විකව සෑම විටම කාර්යය එය නොමැතිවද විසඳා ගත හැකිය.
අපි ප්රායෝගික උදාහරණයක් දෙස බලමු.
අපට සංඛ්යා අඩංගු අරාවක් ලබා දී ඇතැයි සිතමු.
අපි එය ලූපයකින් පුනරාවර්තනය කර, 2 න් බෙදිය හැකි සංඛ්යා
වර්ග කර කොන්සෝලයට ප්රතිදානය කරමු, සහ 3 න් බෙදිය හැකි සංඛ්යා
ඝන කර කොන්සෝලයට ප්රතිදානය කරමු. විස්තර කර ඇති ගැටළුවේ විසඳුම මෙන්න:
let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
for (let elem of arr) {
let result;
if (elem % 2 === 0) {
result = elem * elem;
console.log(result);
} else if (elem % 3 === 0) {
result = elem * elem * elem;
console.log(result);
}
}
ඔබට පෙනෙන පරිදි, console.log(result) පේළිය
වරක් දෙකක් පුනරාවර්තනය වේ.
අපි එය if ට පිටතට ගෙන යමු, මෙලෙස:
let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
for (let elem of arr) {
let result;
if (elem % 2 === 0) {
result = elem * elem;
} else if (elem % 3 === 0) {
result = elem * elem * elem;
}
console.log(result); // ප්රතිදානය කොන්දේසියෙන් පිටතට ගෙන යන ලදී
}
කෙසේ වෙතත්, දැන් අපගේ ස්ක්රිප්ට් එක ටිකක් වෙනස් ආකාරයකින් ක්රියා කරයි:
අපගේ if හරහා පැකසූ නොකළ සාමාන්ය මූලද්රව්ය සඳහා පවා
result විචල්යය කොන්සෝලයට ප්රතිදානය කිරීම සිදු වේ,
එය අපගේ ගැටලුවේ කොන්දේසි අනුව අපට අවශ්ය නැත.
අපි ගැටලුව නිවැරදි කරමු, අපගේ if වෙත
තවත් else කොන්දේසියක් එකතු කරමු, එය
2 හෝ 3 න් බෙදිය නොහැකි මූලද්රව්ය සඳහා ක්රියා කරනු ඇත,
සහ එහිදී අපි continue වාක්ය ඛණ්ඩය ක්රියාත්මක කරමු,
එය අපව වහාම ලූපයේ නව පුනරාවර්තනයකට ගෙන යනු ඇත:
let arr = [1, 2, 3, 4, 5, 6, 7, 8, 9];
for (let elem of arr) {
let result;
if (elem % 2 == 0) {
result = elem * elem;
} else if (elem % 3 == 0) {
result = elem * elem * elem;
} else {
continue; // ලූපයේ නව පුනරාවර්තනයකට යන්න
}
console.log(result); // 2 හෝ 3 න් බෙදිය හැකි නම් ක්රියාත්මක වේ
}
continue භාවිතයෙන් ඔත්තේ සංඛ්යා ඉවත හරිමින්,
1 සිට 100 දක්වා ඉරට්ටේ සංඛ්යා පමණක්
ප්රතිදානය කරන ලූපයක් ලියන්න.