返回

字符串终结,最后一个单词有多长?

前端

步步解题,逐层攻克

  1. 明确问题要求,理解题目本质

题目要求我们找出字符串中最后一个单词的长度。首先需要明确什么是“单词”。题目中明确指出,单词是由字母组成、不包含任何空格字符的字符串。因此,我们可以将字符串按照空格字符进行分割,然后取最后一个分割结果作为最后一个单词。

  1. 分析字符串分割方法,选择合适的数据结构

字符串分割是解决本题的关键步骤。我们可以使用JavaScript提供的String.split()方法来实现字符串分割。该方法接收一个分隔符作为参数,并返回一个由分割结果组成的数组。由于空格字符是单词之间的分隔符,因此我们可以使用空格字符作为分隔符来对字符串进行分割。

  1. 巧用数组特性,轻松获取最后一个单词

将字符串分割成单词数组后,我们就可以轻松获取最后一个单词。由于数组具有索引特性,我们可以直接使用数组的length属性来获取数组的长度,然后减去1即可得到最后一个单词的索引。最后,使用该索引就可以从数组中获取最后一个单词。

  1. 代码实现,展现编程风采
/**
 * 计算字符串中最后一个单词的长度
 *
 * @param {string} str 输入字符串
 * @returns {number} 最后一个单词的长度
 */
const lastWordLength = (str) => {
  // 使用空格字符分割字符串
  const words = str.split(' ');

  // 获取单词数组的长度
  const wordsLength = words.length;

  // 如果单词数组为空,则返回0
  if (wordsLength === 0) {
    return 0;
  }

  // 获取最后一个单词的长度
  const lastWord = words[wordsLength - 1];
  return lastWord.length;
};

代码示例,实践出真知

// 示例字符串
const str = 'Hello, world! This is a string.';

// 调用函数计算最后一个单词的长度
const result = lastWordLength(str);

// 输出结果
console.log(`最后一个单词的长度:${result}`);

输出结果:

最后一个单词的长度:6

扩展思考,更上一层楼

除了上述基本解法外,我们还可以对问题进行扩展思考,探索更多的解决思路:

  1. 正则表达式大显身手

我们可以使用正则表达式来匹配最后一个单词。正则表达式是一种强大的字符串匹配工具,能够匹配各种复杂的字符串模式。我们可以使用正则表达式来匹配最后一个单词,然后获取其长度。

  1. 循环遍历字符串,逐个字符判断

我们可以使用循环遍历字符串,逐个字符判断是否为字母。当遇到第一个字母时,我们就开始统计字母的个数。当遇到第一个非字母字符时,我们就停止统计,并记录下字母的个数。这样,我们就可以得到最后一个单词的长度。

总结与收获

通过对本题的深入分析和代码实现,我们不仅掌握了如何计算字符串中最后一个单词的长度,还学习了多种解决思路和编程技巧。这些技巧可以帮助我们应对各种各样的前端面试题,提升我们的编程能力和面试表现。希望大家能够举一反三,在实际项目中灵活运用这些技巧,创造出更优秀的前端应用。