题目

给定一个仅包含大小写字母和空格 ‘ ‘ 的字符串,返回其最后一个单词的长度。
如果不存在最后一个单词,请返回 0 。
说明:一个单词是指由字母组成,但不包含任何空格的字符串。

示例

  1. 输入: "Hello World"
  2. 输出: 5

解析

Method Me

  1. var getLastWordLen = function (str) {
  2. str = str.split(/\s/)
  3. return str[str.length - 1].length
  4. }

Method 1
将字符串分割成数组,直接取数组中最后一个字符串的长度

  1. var lengthOfLastWord = function(s) {
  2. // let arr = s.split(/\s+/).filter(i => i); // 同样功能
  3. let arr = s.split(' ').filter(i => i)
  4. if(arr.length) {
  5. return arr[arr.length-1].length
  6. }
  7. else {
  8. return 0;
  9. }
  10. };

Method 2
先去掉空格在分割成字符串,取数组中最后一个字符串的长度

  1. var lengthOfLastWord = function(s) {
  2. var arr = s.trim().split(" ");
  3. return arr[arr.length-1].length;
  4. };