【发布时间】:2019-07-01 18:51:16
【问题描述】:
我正在尝试创建一个在新行上打印每个单词的函数。给出的参数是一个字符串,其中的单词不是用空格分隔,而是大写,除了第一个单词,即“helloMyNameIsMark”。我有一些可行的方法,但想知道在 javaScript 中是否有更好的方法。
separateWords = (string) => {
const letters = string.split('');
let word = "";
const words = letters.reduce((acc, letter, idx) => {
if (letter === letter.toUpperCase()) {
acc.push(word);
word = "";
word = word.concat(letter);
} else if (idx === letters.length - 1) {
word = word.concat(letter);
acc.push(word);
} else {
word = word.concat(letter)
}
return acc
}, []);
words.forEach(word => {
console.log(word)
})
}
【问题讨论】:
标签: javascript string algorithm