如何获取字符串的最后一个字符:
"linto.yahoo.com."
这个字符串的最后一个字符是“。”
我怎么才能找到这个?
如何获取字符串的最后一个字符:
"linto.yahoo.com."
这个字符串的最后一个字符是“。”
我怎么才能找到这个?
使用charAt:
charAt()方法的作用是:返回字符串中指定下标处的字符。
您可以将此方法与字符串的length属性结合使用,以获取该字符串中的最后一个字符。 例如:
const myString = "linto.yahoo.com."; const stringLength = myString.length;//这将是16 console.log('lastChar: ', myString. log)charAt(stringLength - 1));//这将是字符串
使用JavaScript的charAt函数获取给定0索引位置的字符。使用length来找出字符串的长度。最后一个字符的长度是- 1。 例子:
var word = "linto.yahoo.com.";
var last = word.charAt(word.length - 1);
alert('The last character is:' + last);
一个优雅而简短的替代方法是String.prototype.slice方法。
仅仅通过:
str.slice(-1);
负起始索引将字符串从长度+索引切片到长度,即索引-1,最后一个字符被提取:
"abc".slice(-1); // "c";
使用参数为-1的substr:
“linto.yahoo.com”。.substr (1);
=“。”
注意:
要从字符串的末尾提取字符,请使用负的起始数字(这在ie8及更早版本中不起作用)。
var firstName = "Ada";
var lastLetterOfFirstName = firstName[firstName.length - 1];
你可以用不同的方式来实现这一点,但性能不同,
1. 使用括号表示:
var str = “测试”; var lastLetter = str[str.length - 1];
但不建议使用括号。在这里查看原因
2. charAt(指数):
var lastLetter = str.charAt(str.length - 1)
这是可读的和最快的。这是最推荐的方式。
3.子字符串:
str.substring(str.length - 1);
4. 片:
str.slice(-1);
它比substring略快。
您可以在这里查看性能
ES6:
你可以使用str.endsWith("t");
但IE不支持。在这里查看endsWith的更多细节
你可以使用下面的方法。在这种情况下,最后一个字符是多余的,但对于子字符串,它是有用的:
var word = "linto.yahoo.com.";
var last = ".com.";
if (word.substr(-(last.length)) == last)
alert("its a match");
您可以使用这个简单的ES6方法
const lastChar = (str) = > str.split (") .reverse () . join(" ")。取代 (',', '')[ str。长度=== str.length + 1 ?1: 0]; / /实例 console.log (lastChar (" linto.yahoo.com "));
这将在所有浏览器中工作。
如果你已经或正在使用lodash,请使用last:
_.last(str);
它不仅比普通JS更简洁和明显,它也更安全,因为它避免了Uncaught TypeError:当输入为null或未定义时不能读取属性X为undefined,所以你不需要事先检查:
// Will throw Uncaught TypeError if str is null or undefined
str.slice(-1);
str.charAt(str.length -1);
// Returns undefined when str is null or undefined
_.last(str);
var string = "Hello"; Var fg = string.length; Fg = Fg - 1; console.log (string (fg));
使用String.prototype.at()方法是实现它的一种新方法
Const s = "linto.yahoo.com."; Const last = s.at(-1); console.log(去年);
阅读更多关于at的资料