我有
var id="ctl03_Tabs1";
使用JavaScript,如何获得最后五个字符或最后一个字符?
我有
var id="ctl03_Tabs1";
使用JavaScript,如何获得最后五个字符或最后一个字符?
当前回答
假设你将子字符串与另一个字符串的结尾进行比较,并使用结果作为布尔值,你可以扩展string类来完成这一点:
String.prototype.endsWith = function (substring) {
if(substring.length > this.length) return false;
return this.substr(this.length - substring.length) === substring;
};
允许您执行以下操作:
var aSentenceToPonder = "This sentence ends with toad";
var frogString = "frog";
var toadString = "toad";
aSentenceToPonder.endsWith(frogString) // false
aSentenceToPonder.endsWith(toadString) // true
其他回答
你可以用切片
id.slice(-5);
检查子字符串函数。
要得到最后一个字符:
id.substring(id.length - 1, id.length);
编辑:正如其他人指出的那样,使用slice(-5)而不是substr。但是,请参阅答案底部的.split().pop()解决方案以了解另一种方法。
最初的回答:
你需要使用Javascript字符串方法.substr()结合.length属性。
var id = "ctl03_Tabs1";
var lastFive = id.substr(id.length - 5); // => "Tabs1"
var lastChar = id.substr(id.length - 1); // => "1"
这将获取从id开始的字符。长度- 5,由于.substr()的第二个参数被省略,因此将一直持续到字符串的末尾。
您也可以使用.slice()方法,正如其他人在下面指出的那样。
如果你只是想找到下划线后面的字符,你可以使用这个:
var tabId = id.split("_").pop(); // => "Tabs1"
这将字符串拆分为一个下划线数组,然后从数组中“弹出”最后一个元素(这是您想要的字符串)。
下面的脚本显示了使用JavaScript获取字符串中最后5个字符和最后1个字符的结果:
var testword='ctl03_Tabs1';
var last5=testword.substr(-5); //Get 5 characters
var last1=testword.substr(-1); //Get 1 character
输出:
Tabs1 //有5个字符 1 // 1个字符
假设你将子字符串与另一个字符串的结尾进行比较,并使用结果作为布尔值,你可以扩展string类来完成这一点:
String.prototype.endsWith = function (substring) {
if(substring.length > this.length) return false;
return this.substr(this.length - substring.length) === substring;
};
允许您执行以下操作:
var aSentenceToPonder = "This sentence ends with toad";
var frogString = "frog";
var toadString = "toad";
aSentenceToPonder.endsWith(frogString) // false
aSentenceToPonder.endsWith(toadString) // true