JavaScript හි නැවත නැවත ක්‍රියාකාරකම් ප්‍රශස්තිකරණය කිරීම

බොහෝ විට ආරම්භක ප්‍රොග්‍රෑමර්වරු එකම ශ්‍රිතය කිහිප වතාවක් කැඳවීම නිෂ්ප්‍රභ කර අමතකවම සිදු කරයි, සම්පත් විනාශ කරයි.

අපි උදාහරණයක් බලමු. අපට යම් පාඨයක් ඇතැයි සිතමු, යම් මාර්ගයක් අඩංගු වේ:

javascriptlet path = 'img.png';

අප ඉදිරියේ ඇති කාර්යය වන්නේ මාර්ගය අවසන් වන්නේ දැයි පරීක්ෂා කිරීමයි විස්තීර්ණය .png හෝ .jpg වෙත. සමහර ආරම්භක ප්‍රොග්‍රෑමර්වරු ලියා ඇත පහත විසඳුම:

javascriptlet path = 'img.png';

if (path.slice(-4) === '.png' || path.slice(-4) === '.jpg') {
  console.log('+++');
} else {
  console.log('---');
}

මෙම විසඳුම සමඟ කුමක් වරද්ද? ගැටලුව එයයි, මෙම slice ක්‍රමය කැඳවනු ලැබේ දෙවරක්, එකම දේ කරයි. ඇත්ත වශයෙන්ම මෙය, ප්‍රශස්ත නොවේ.

ප්‍රශස්තිකරණය සඳහා, කපා ගැනීම සිදු කළ යුතුය පේළිය එක වරක්, ප්‍රතිඵලය ලියන්න විචල්‍යයකට, ඉන්පසු භාවිතා කරන්න එම විචල්‍යය තවදුරටත්:

javascriptlet path = 'img.png';
let ext  = path.slice(-4);

if (ext === '.png' || ext === '.jpg') {
  console.log('+++');
} else {
  console.log('---');
}
Задание 1

පහත දක්වා ඇති කේතය ප්‍රශස්තිකරණය කරන්න:

javascriptlet num = 123;

if (String(num)[0] === '1' || String(num)[0] === '2') {
  console.log('+++');
} else {
  console.log('---');
}
Задание 2

පහත දක්වා ඇති කේතය ප්‍රශස්තිකරණය කරන්න:

javascriptlet date = new Date();

if (date.getDay() === 0 || date.getDay() === 6) {
  console.log('weekend');
} else {
  console.log('weekday');
}
Задание 3

පහත දක්වා ඇති කේතය ප්‍රශස්තිකරණය කරන්න:

javascriptlet date = new Date();
let res;

if (date.getFullYear() >= 2020 && date.getFullYear() <= 2030) {
  res = 'year ' + date.getFullYear() + ' fits';
} else {
  res = 'year ' + date.getFullYear() + ' doesn't fit';
}

console.log(res)