filter ක්‍රමය

filter ක්‍රමය අරාවේ අංග පෙරීමට ඉඩ සලසයි, නිශ්චිත කොන්දේසියකට ගැලපෙන අංග පමණක් තබා ගනී. ක්‍රමය පරාමිතියක් ලෙස ශ්‍රිතයක් ලබා ගනී, එය අරාවේ සෑම අංගයක් සඳහාම ක්‍රියාත්මක වේ. ක්‍රමය එහි ප්‍රතිඵලයක් ලෙස නව අරාවක් ආපසු ලබා දෙයි, සපයන ලද ශ්‍රිතය true ආපසු ලබා දෙන අංග පමණක් එහි ඇතුළත් වේ.

ශ්‍රිතයට පරාමිති තුනක් සම්ප්‍රේෂණය කළ හැක. මෙම පරාමිතීන් පවතියි නම් (ඒවා අනිවාර්ය නොවේ), පළමුවැන්නට ස්වයංක්‍රීයව අරාවේ අංගය වැටෙනු ඇත, දෙවැන්නට එහි අරාවේ අංකය (සුචිය) වැටෙනු ඇත, තෙවැන්නට - අරාවම.

වාක්‍ය රචනය

javascriptlet නව අරාව = අරාව.filter(function(අංගය, සුචිය, අරාව) {
  කේතය
  return true හෝ false
});

උදාහරණය

අරාවක් පෙරීමට ඉඩ දෙමු, එහි පමණක් ධන සංඛ්‍යා තබා ගනිමු:

javascriptlet arr = [-2, 5, 1, -5, -1, 1, 3, 4, -1];

let res = arr.filter(function(elem) {
  if (elem >= 0) {
    return true;
  } else {
    return false;
  }
});

console.log(res);

කේතය ක්‍රියාත්මක කිරීමේ ප්‍රතිඵලය:

javascript[5, 1, 1, 3, 4]

උදාහරණය

භාවිතා කිරීමෙන් කේතය කෙටි කරමු ඊතල ශ්‍රිතය:

javascriptlet arr = [-2, 5, 1, -5, -1, 1, 3, 4, -1];

let res = arr.filter(elem => {
  if (elem >= 0) {
    return true;
  } else {
    return false;
  }
});

console.log(res);

කේතය ක්‍රියාත්මක කිරීමේ ප්‍රතිඵලය:

javascript[5, 1, 1, 3, 4]

උදාහරණය

භාවිතයෙන් කේතය කෙටි කරමු තර්ක මෙහෙයුම් කෙටි කිරීම්:

javascriptlet arr = [-2, 5, 1, -5, -1, 1, 3, 4, -1];

let res = arr.filter(elem => {
  return elem >= 0;
});

console.log(res);

කේතය ක්‍රියාත්මක කිරීමේ ප්‍රතිඵලය:

javascript[5, 1, 1, 3, 4]

උදාහරණය

භාවිතයෙන් කේතය කෙටි කරමු ඊතල ශ්‍රිතවල ලක්ෂණ:

javascriptlet arr = [-2, 5, 1, -5, -1, 1, 3, 4, -1];
let res = arr.filter(elem => elem > 0);

console.log(res);

කේතය ක්‍රියාත්මක කිරීමේ ප්‍රතිඵලය:

javascript[5, 1, 1, 3, 4]

උදාහරණය

අවශ්‍යතාවයක් ඇති විට තුන්වන පරාමිතියට අරාවම සම්ප්‍රේෂණය කළ හැකිය:

javascriptlet res = arr.filter(function(elem, index, arr) {
  arr අරාව මෙහි ප්‍රවේශ විය හැකිය
});

මෙයද බලන්න

  • map සහ forEach ක්‍රම,
    අරාවේ සෑම අංගයකටම ශ්‍රිතයක් යෙදීමට ඉඩ සලසයි
  • some සහ every ක්‍රම,
    අරාව පරීක්ෂා කරනවා
  • reduce සහ reduceRight ක්‍රම,
    අරාව එක් අගයකට හකුළුවනවා