[英]Javascript: Capitalizing the beginning of every word.
這里的功能是假設每個單詞的開頭都大寫。 我知道還有其他更簡單的解決方案,但是我對為什么這個解決方案無法正常工作有些固執。 每次返回后,它都會顯示“未定義”。
function LetterCapitalize(str) {
var c = str[0].charCodeAt(0);
var letter;
var result = "";
if( (c >= "a".charCodeAt(0) && c <="z".charCodeAt(0)) || (c >= "A".charCodeAt(0) && c <="Z".charCodeAt(0)))
{
result = str[0].toUpperCase()
}
else
{
result += str[i];
}
for(var i=1; i<=str.length; i++)
{
if(str[i-1] == " ")
{
letter = str[i].toUpperCase()
result += letter;
}
else
{
result += str[i];
}
}
return result;
}
如果你改變
for(var i = 1; i <= str.length; i++)
至
for(var i = 1; i < str.length; i++)
它會按您期望的那樣工作。 就目前而言,您將在字符串中多索引一次,這將返回undefined。
同樣,第一個if / else語句也可以完全放棄。 否則,else語句將是語法錯誤,而i is undefined
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.