如何用JavaScript实现输出名字首字母加完整姓氏的功能
JavaScript 姓名格式转换实现(名首字母+完整姓氏)
核心思路是将姓名按空格分割为多个片段,取首个片段的首字母大写后拼接点号,再组合后续所有片段作为完整姓氏输出,兼容常见异常输入场景。
可直接复用的函数
function formatAbbrName(fullName) { // 过滤首尾空格+按任意数量空格分割 const nameSegs = fullName.trim().split(/\s+/); // 边界兼容:输入仅为单个字符串时直接返回 if (nameSegs.length < 2) return fullName; // 取首段首字母大写,拼接后续所有段作为姓氏 return `${nameSegs[0][0].toUpperCase()}. ${nameSegs.slice(1).join(' ')}` } // 测试示例 const name = "Mike Jones"; console.log(formatAbbrName(name)); // 输出:M. Jones
兼容场景说明
- 自动处理姓名首尾带空格、名和姓中间多空格的异常输入,比如输入
" John Smith "也会输出J. Smith - 支持姓氏本身带空格的特殊姓名,比如输入
"Alice De La Cruz"会输出A. De La Cruz - 单字姓名/输入非法格式时直接返回原内容,不会抛出报错
内容的提问来源于stack exchange,提问作者Blackwell805
相关产品推荐
相关产品推荐

