JavaScript 首字母大寫


在本問題陳述中,我們的任務是藉助 Javascript 功能使每個單詞的首字母大寫。要解決此問題,我們需要了解問題的含義和邏輯。

理解問題陳述

問題陳述是在 Javascript 中編寫一個函式,該函式將幫助將給定字串中每個單詞的首字母大寫。例如,如果我們有一個字串“hello world”,則此字串的轉換版本為“Hello World”。

給定問題的邏輯

對於程式碼,我們將建立一個函式來執行給定的任務。在函式內部,我們將使用 Javascript 的一些內建方法來修改字串。該函式將首先將輸入字串拆分為一個單詞陣列,然後我們將遍歷陣列中的每個單詞。在迴圈內,我們將使每個單詞的首字母大寫,並將其與單詞的其餘部分連線起來。最後,將它們重新連線成一個字串並返回結果。

演算法

步驟 1 − 宣告一個名為 capitalizeWords 的函式,該函式使用字串引數。

步驟 2 − 使用 split 方法分割給定字串的單詞,並將分割後的值放入 words 物件中。

步驟 3 − 迴圈遍歷字串的單詞,在此迴圈內,我們將使用 toUpperCase 方法使每個單詞的首字母大寫。

步驟 4 − 並且在使每個單詞大寫之後,我們將它們重新連線成一個字串。

步驟 5 − 將結果作為字串的大寫單詞返回。

演算法程式碼

// function for capitalizing the first letter of each words
function capitalizeWords(str) {
   const words = str.split(' ');
   for (let i = 0; i < words.length; i++) {
      const firstLetter = words[i].charAt(0).toUpperCase();
      words[i] = firstLetter + words[i].slice(1);
   }
   return words.join(' ');
}
const inputString = "hello tutorials point, i am learning javascript";
const capitalizedString = capitalizeWords(inputString);
console.log(capitalizedString);

複雜度

函式花費的時間為 O(n),因為該方法對給定字串中的每個單詞都使用恆定時間來工作。而 n 是給定字串的大小。程式碼使用的空間也是 O(n),因為它僅將結果儲存為字串的第一個大寫單詞。

結論

因此,上面建立的函式可用於使每個單詞的首字母大寫,時間複雜度為 O(n)。我們基本上使用了一些 Javascript 的內建方法來解決給定的問題。

更新於: 2023年5月18日

387 次瀏覽

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告