基本上,挑戰是要有一個算法,接受一個字符串,並返回大寫的每個單詞的開頭。足夠簡單,但我發現在找到循環中的空間後,如何將字母大寫(可能有更好的方法)。陷入一個挑戰,讓我大寫每個單詞的開頭
這裏是我的代碼:
var capitalize = function(string){
var split = string.split(" ");
var collection = [];
var store = [];
for(var i = 0; i < split.length; i++){
if(split[i]){
if(split[i] === " "){
var init = split[i+1].toUpperCase();
store.push(init);
collection.push(split[i]);
} else{
collection.push(split[i]);
}
}
}
var temp = collection.join(" ");
var final = temp.charAt(0).toUpperCase() + temp.slice(1);
return final;
}
顯然,在我的for循環,它不會讓我修改,我正在通過遍歷數組。然後我嘗試了一個while循環,我嘗試使用array.map,但它仍然不起作用。我似乎無法理解如何在找到空格(「」)後能夠利用該單詞。
任何幫助表示讚賞。
您需要在這裏添加一個空格:'string.split(「」);' - 在引號之間 – ochi
'.toUpperCase()'返回新值並且不會在原來的位置更改值 – Andreas
Andreas,謝謝。我會做出改變。我的整個代碼都是圍繞大寫字母對數組本身進行更改。我非常愚蠢。 –