You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何编写JS函数实现首字母缩写生成功能?现有代码运行异常如何修复?

问题分析
  • words.split(' ') 执行后没有将分割得到的单词数组赋值给新变量,原始输入字符串本身不会被split方法修改,这一步的处理结果直接被丢弃。
  • 循环遍历的对象还是原始字符串words,相当于逐个读取原字符串的每一个字符取首字母,最终会把整个原字符串(包含空格)原样拼接返回,完全没有按单词取首字母的效果。
  • 循环变量i没有做声明,会自动成为全局变量,存在作用域污染的风险。
调整后可运行代码
function makeAbbr(words) {
  var text = '';
  // 存储split分割得到的单词数组
  var wordArr = words.split(' ');
  
  // 遍历单词数组而非原始字符串
  for (var i = 0; i < wordArr.length; i++) {
    // 取首字母后转大写,符合缩写的通用格式
    text += wordArr[i].substr(0, 1).toUpperCase()
  }
  
  return text
}

console.log(makeAbbr('java script')) // 输出结果:JS

内容的提问来源于stack exchange,提问作者Сервер Изединов

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 12:54:08