问题描述
给你一个字符串 s,由若干单词组成,单词之间用空格隔开。返回字符串中最后一个单词的长度。如果不存在最后一个单词,请返回 0 。单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。
58.1、解法一
- str.trim() 移除两端的空格
- lastIndexOf(" ") 获得最后一个空格出现的位置
- 使用slice (start,end) 截取 最后一个空格出现之后的全部元素
var lengthOfLastWord = function (s) {
// 移除两端的空格
s = s.trim()
// 空字符串
if (s === '') {
return 0
}
// 查找最后一个空格出现的位置 截取空格之后位置的全部元素 并返回长度
return s.slice(s.lastIndexOf(' ') + 1).length
};
// 测试
const s = 'Hello World';
// const s = "a";
// const s = 'a '
console.log(lengthOfLastWord(s));
58.2、解法二
- sttr.trim() 移除两端的空格
- split(" ")把一个字符串分割成字符串数组
- 弹出最后一个元素 返回最后一个元素长度
var lengthOfLastWord = function (s) {
// 移除两端的空格
s = s.trim()
// 空字符串
if (s === '') {
return 0
}
// 将字符串转换为数组 并且以空格分隔 然后弹出最后一个元素 并返回长度
return s.split(" ").pop().length
};
// 测试
const s = 'Hello World';
// const s = "a";
// const s = 'a '
console.log(lengthOfLastWord(s));
这篇博客介绍了两种JavaScript方法来找到字符串中最后一个单词的长度。第一种方法利用`trim()`移除空格,然后通过`lastIndexOf('')`找到最后一个空格的位置,再使用`slice()`获取剩余部分的长度。第二种方法则是先使用`trim()`,然后将字符串转换为数组,通过`split('')`按空格分隔,最后`pop()`获取最后一个元素的长度。这两种方法都可以有效地解决这个问题。
252

被折叠的 条评论
为什么被折叠?



