我有
var id="ctl03_Tabs1";
使用JavaScript,如何获得最后五个字符或最后一个字符?
我有
var id="ctl03_Tabs1";
使用JavaScript,如何获得最后五个字符或最后一个字符?
当前回答
如果你只是想要最后一个字符或任何字符在知道的位置,你可以简单地trat字符串作为一个数组!字符串在javascript中是可迭代的
Var x = "hello_world";
x[0]; //h
x[x.length-1]; //d
然而,如果你需要不止一个字符,那么使用拼接是有效的
x.slice(-5); //world
关于你的例子
"rating_element-<?php echo $id?>"
要提取id,可以很容易地使用split + pop
Id= inputId.split('rating_element-')[1];
返回id,如果'rating_element'后面没有id,则返回undefined :)
其他回答
检查子字符串函数。
要得到最后一个字符:
id.substring(id.length - 1, id.length);
我相信这将工作....
var string1="myfile.pdf"
var esxtenion=string1.substr(string1.length-4)
extension的值是"。pdf"
性能
今天2020.12.31我在Chrome v87、Safari v13.1.2和Firefox v84上的MacOs HighSierra 10.13.6上执行测试,以获得最后N个字符的大小写(最后一个字母大小写的结果,为了清晰起见,我在单独的答案中给出)。
结果
适用于所有浏览器
基于切片的解决方案D是最快或最快的 解G最慢
细节
我执行2个测试用例:
当字符串有10个字符-你可以在这里运行它 当字符串有1M字符-你可以在这里运行它
下面的代码片段给出了解决方案 一个 B C D E F G(我)
//https://stackoverflow.com/questions/5873810/how-can-i-get-last-characters-of-a-string // https://stackoverflow.com/a/30916653/860099 function A(s,n) { return s.substr(-n) } // https://stackoverflow.com/a/5873890/860099 function B(s,n) { return s.substr(s.length - n) } // https://stackoverflow.com/a/17489443/860099 function C(s,n) { return s.substring(s.length - n, s.length); } // https://stackoverflow.com/a/50395190/860099 function D(s,n) { return s.slice(-n); } // https://stackoverflow.com/a/50374396/860099 function E(s,n) { let i = s.length-n; let r = ''; while(i<s.length) r += s.charAt(i++); return r } // https://stackoverflow.com/a/17489443/860099 function F(s,n) { let i = s.length-n; let r = ''; while(i<s.length) r += s[i++]; return r } // my function G(s,n) { return s.match(new RegExp(".{"+n+"}$")); } // -------------------- // TEST // -------------------- [A,B,C,D,E,F,G].map(f=> { console.log( f.name + ' ' + f('ctl03_Tabs1',5) )}) This shippet only presents functions used in performance tests - it not perform tests itself!
这里是chrome的示例结果
要获取字符串的最后一个字符,可以使用split(").pop()函数。
const myText = "The last character is J";
const lastCharater = myText.split('').pop();
console.log(lastCharater); // J
它的工作原理是因为当split(")函数有empty(")作为参数时,字符串的每个字符都被更改为数组的一个元素。因此,我们可以使用pop()函数返回该数组的最后一个元素,即'J'字符。
可以使用起始位置为负的substr()方法来检索最后n个字符。例如,这将得到最后5:
var lastFiveChars = id.substr(-5);