我有

var id="ctl03_Tabs1";

使用JavaScript,如何获得最后五个字符或最后一个字符?


当前回答

我相信这将工作....

var string1="myfile.pdf"
var esxtenion=string1.substr(string1.length-4)

extension的值是"。pdf"

其他回答

获取最后一个字符很容易,因为你可以把字符串当作数组:

var lastChar = id[id.length - 1];

要获取字符串的一部分,可以使用substr函数或substring函数:

id.substr(id.length - 1); //get the last character
id.substr(2);             //get the characters from the 3rd character on
id.substr(2, 1);          //get the 3rd character
id.substr(2, 2);          //get the 3rd and 4th characters

substr和substring之间的区别在于如何处理第二个(可选)参数。在substr中,它是来自索引(第一个参数)的字符量。在substring中,它是字符切片应该结束的位置的索引。

你可以用切片

id.slice(-5);

下面的脚本显示了使用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

可以使用起始位置为负的substr()方法来检索最后n个字符。例如,这将得到最后5:

var lastFiveChars = id.substr(-5);