යාවත්කාලීන කිරීම (2015 නොවැම්බර් 24):
මෙම පිළිතුර මුලින් පළ කර ඇත්තේ 2010 වර්ෂයේදීය (මීට වසර හයකට පෙර.) එබැවින් කරුණාකර මෙම තීක්ෂ්ණ බුද්ධිමත් අදහස් සැලකිල්ලට ගන්න:
මුල් පිළිතුර:
මෙය වසරක් පැරණි ප්රශ්නයක් බව මම දනිමි ... නමුත් මට මෙයද අවශ්ය වන අතර හරස් බ්රව්සරය වැඩ කිරීමට මට එය අවශ්යය ... එබැවින් සෑම දෙනාගේම පිළිතුරු සහ අදහස් ඒකාබද්ධ කර එය ටිකක් සරල කරන්න:
String.prototype.endsWith = function(suffix) {
return this.indexOf(suffix, this.length - suffix.length) !== -1;
};
- උපස්ථරයක් සාදන්නේ නැත
indexOf
වේගවත්ම ප්රති .ල සඳහා ස්වදේශීය ක්රියාකාරිත්වය භාවිතා කරයි
indexOf
ඉදිරියට යාම සඳහා දෙවන පරාමිතිය භාවිතා කරමින් අනවශ්ය සැසඳීම් මඟ හරින්න
- ඉන්ටර්නෙට් එක්ස්ප්ලෝරර් හි වැඩ කරයි
- රෙජෙක්ස් සංකූලතා නොමැත
එසේම, දේශීය දත්ත ව්යුහයේ මූලාකෘතිවල දේවල් පුරවා ගැනීමට ඔබ අකමැති නම්, මෙන්න ස්වාධීන අනුවාදයක්:
function endsWith(str, suffix) {
return str.indexOf(suffix, str.length - suffix.length) !== -1;
}
සංස්කරණය කරන්න: අදහස් දැක්වීමේදී @ හාමිෂ් විසින් සටහන් කර ඇති පරිදි, ඔබට ආරක්ෂිත පැත්තේ වැරැද්දක් කිරීමට අවශ්ය නම් සහ ක්රියාත්මක කිරීමක් දැනටමත් ලබා දී typeof
ඇත්දැයි පරීක්ෂා කර බැලීමට ඔබට අවශ්ය නම්, එවැනි චෙක්පතක් එක් කළ හැකිය :
if (typeof String.prototype.endsWith !== 'function') {
String.prototype.endsWith = function(suffix) {
return this.indexOf(suffix, this.length - suffix.length) !== -1;
};
}