Answers:
该String.prototype.slice
方法是一种优雅而又简短的选择。
只是:
str.slice(-1);
负起始索引将字符串从length+index
,切成length
index -1
,最后一个字符被提取:
"abc".slice(-1); // "c";
slice()
方法。-它们的功能在概念上相似(部分副本)--------(以防万一,您正在阅读代码并查看.slice()
)
str.slice(-1)
但确实得到了字符串的最后一个字符(根据需要的OP),就像您使用过的一样str.charAt(str.length - 1)
,尝试:"abc".slice(-1)
。我在这里显示了String.prototype.slice
带有负索引的用法。str.slice(-n)
将获取n
原始字符串的最后一个字符作为新的字符串值。更多信息:developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/...
str.charAt(str.length - 1)
某些浏览器允许您(作为非标准扩展名)将其缩短为:
str[str.length - 1];
您可以使用不同的方法来实现此目标,但要获得不同的性能,
1.使用括号表示法:
var str = "Test";
var lastLetter = str[str.length - 1];
但是不建议使用方括号。在这里检查原因
2. charAt [index]:
var lastLetter = str.charAt(str.length - 1)
这是可读且最快的。这是最推荐的方式。
3.子串:
str.substring(str.length - 1);
4.切片:
str.slice(-1);
它比子字符串快一点。
您可以在这里查看性能
使用ES6:
您可以使用 str.endsWith("t");
但是IE不支持它。在此处检查有关ends的更多详细信息
str.slice(-1);
endsWith
这里是否适合,这会带来完全不同的效果。