我需要找到一个空白空间来创建首字母缩写词,第一个字母有问题,其余的要容易得多。
let word = "";
let p = "Tim Hortans Returant"
for (let i=0 ; i<p.length; i++){
if (p.charAt(i) != " "){
word+= i ;
}
if(p.charAt(i) === " "){
word+= p.charAt(i+1)
console.log(word)
}
}
答案 0 :(得分:1)
由空格分隔,将每个单词映射到其第一个字符,然后加入:
const p = "Tim Hortans Returant"
const word = p
.split(' ')
.map(word => word[0])
.join('');
console.log(word);
或者,也许更有效地使用正则表达式捕获每个单词的第一个字符,匹配其余单词,并替换为捕获的字符:
const p = "Tim Hortans Returant"
const word = p
.replace(/(\S)\S* */g, '$1');
console.log(word);
如果必须使用for
循环(不建议使用,它需要冗长且混乱的代码),请将第i + 1
个字符添加到{{1} },当找到空格时:
word