මෙන්න ඔබ තව දුරටත් ජාවාස්ක්රිප්ට් කලාව සොයමින් පැමිණියේ නම්
භාවිතා කළ තවත් පිළිතුරක ආත්මය තුළ reduceRight()
, නමුත් කෙටි:
[3, 2, 1, 5].reduceRight(a => a);
එය රඳා පවතින්නේ, ඔබ ආරම්භක අගයක් ලබා නොදෙන්නේ නම්, අවසාන අංගය ආරම්භක එක ලෙස තෝරාගෙන ඇති බැවිනි ( මෙහි ලේඛය පරීක්ෂා කරන්න බැවිනි ). ඇමතුම නැවත ආරම්භක අගය නැවත ලබා දෙන බැවින්, අවසාන අංගය අවසානයේ දී ආපසු ලැබෙනු ඇත.
මෙය ජාවාස්ක්රිප්ට් කලාව ලෙස සැලකිය යුතු බවට පරෙස්සම් වන්න එය කිසිසේත් මා නිර්දේශ නොකරන ක්රමයක් නොවන , බොහෝ දුරට එය ඕ (එන්) කාලය තුළ ධාවනය වන නිසා පමණක් නොව එය කියවීමේ හැකියාව රිදවන බැවිනි.
දැන් බැරෑරුම් පිළිතුර සඳහා
මා දකින හොඳම ක්රමය (ඔබට වඩා සංක්ෂිප්තව එය අවශ්ය යැයි සලකමින් array[array.length - 1]
) මෙයයි:
const last = a => a[a.length - 1];
ඉන්පසු ශ්රිතය භාවිතා කරන්න:
last([3, 2, 1, 5])
ඔබ [3, 2, 1, 5]
ඉහත භාවිතා කළ නිර්නාමික අරාව සමඟ ගනුදෙනු කරන්නේ නම් ශ්රිතය සැබවින්ම ප්රයෝජනවත් වේ , එසේ නොමැතිනම් ඔබට එය දෙවරක් ක්ෂණිකව කිරීමට සිදුවේ, එය අකාර්යක්ෂම හා කැත වනු ඇත:
[3, 2, 1, 5][[3, 2, 1, 5].length - 1]
අහ්.
උදාහරණයක් ලෙස, මෙන්න ඔබට නිර්නාමික අරාවක් ඇති අතර ඔබට විචල්යයක් අර්ථ දැක්විය යුතුය, නමුත් ඔබට last()
ඒ වෙනුවට භාවිතා කළ හැකිය :
last("1.2.3".split("."));