如何获取字符串的最后一个字符:

"linto.yahoo.com."

这个字符串的最后一个字符是“。”

我怎么才能找到这个?


当前回答

使用JavaScript的charAt函数获取给定0索引位置的字符。使用length来找出字符串的长度。最后一个字符的长度是- 1。 例子:

var word = "linto.yahoo.com.";
var last = word.charAt(word.length - 1);
alert('The last character is:' + last);

其他回答

你可以用不同的方式来实现这一点,但性能不同,

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的更多细节

str.charAt(str.length - 1)

一些浏览器允许(作为一个非标准扩展)你把它缩短为:

str[str.length - 1];

试试这个…

const str = "linto.yahoo.com."
console.log(str.charAt(str.length-1));

如果你已经或正在使用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);

你可以像这样得到最后一个char:

var lastChar=yourString.charAt(yourString.length-1);