【 LeetCode 】58、最后一个单词的长度

五十八、最后一个单词的长度

问题描述

给你一个字符串 s,由若干单词组成,单词之间用空格隔开。返回字符串中最后一个单词的长度。如果不存在最后一个单词,请返回 0 。单词 是指仅由字母组成、不包含任何空格字符的最大子字符串。

58.1、解法一

  • sttr.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));
上一篇:2021-7-9 VUE的number\trim\lazy


下一篇:MyBatis-动态SQL