0
我試圖檢測哪個單詞是一個名稱,並大寫它的第一個字母。下面是我試過的代碼:如何製作特定單詞的首字母大寫?
else if (splitInput[i].match(/a|e|i|o|u/)){
i = 0;
var up = input.indexOf("ben");
up = up + 4;
console.log("toUpperCase: " + up);
i = slotBen + 1;
var toUp = input.charAt(up);
console.log("Before uppercase: " + toUp);
var afUp = toUp.toUpperCase();
//input.charAt(up).replace(toUp, afUp);
console.log("After toUpperCase: " + afUp);
//input.replace(toUp, afUp);
console.log(input);
bubbleR.innerHTML = input;
console.log('slotBen:', slotBen);
userID.name = splitInput[i];
也許有點太複雜了,但我不能讓它工作,或者更容易閱讀/理解。如果你運行這個函數,它確切地知道它需要使用哪個字母,但它不會在input
中替換它。這裏有一個codepen
文本是在荷蘭,但不介意:)
編輯:有建議,試試這個:
var capitalized = splitInput[i].toUpperCase() + input.substr(1);
與我是i = slotBen + 1;
,但是事實並非如此工作。我認爲我確實實施了,但我不確定。嘗試了不同的組合,沒有一個能夠解決。
你可能想後和前「奔」,因爲現在,它會大寫「奔」(這將導致話良性外出時資本爲好)的任何次數增加空間 – Roberrrt
什麼是'slotBen'?無論如何,JS字符串是不可變的;你不能「替換」字符。你必須創建一個新的字符串。 'replace'不會替換現有字符串中的字符;它會使用指定的替換創建一個NEW字符串。如果你閱讀文檔,這應該都很清楚。更一般地說,搜索「在JavaScript中使用大寫字母」應該會引發大量的方法。 –
CSS會成爲一個選項嗎?有一個文本轉換:大寫; – moefinley