JavaScript 中將數字拆分為單個數字


在給定的問題陳述中,我們得到一個數字,我們的任務是藉助 Javascript 將其拆分為單個數字。因此,我們可以將給定的數字轉換為字串,然後可以使用字串操作技術來獲得所需的結果。

理解問題

在 Javascript 中,在單個數字級別運算元字非常常見。因此,將給定數字拆分為其組成數字是一項常見的任務。並將其提取以供進一步處理或分析。

給定問題的邏輯

要解決此問題,我們將使用兩種不同的方法在 Javascript 中將數字拆分為其單個數字。因此,我們將透過兩種方式解決此問題。在第一種方法中,我們將數字轉換為字串表示形式,然後使用字串操作方法分離數字。在第二種方法中,我們將使用數學運算從數字中提取每個數字。

演算法 - 第一種方法

步驟 1:宣告要轉換為數字的數字。

步驟 2:將數字分離成字串並使用字串操作方法新增它。

步驟 3:將數字轉換為其數字後,我們將控制檯輸出 digits 變數以顯示輸出。

示例

//Define the number to split into digits
let number = 54321;
let digits = number.toString().split('');
console.log(digits);

輸出

[ '5', '4', '3', '2', '1' ]

演算法 - 第二種方法

步驟 1:透過宣告要拆分為數字的數字並將其儲存在“number”變數中來開始程式。

步驟 2:由於我們希望將拆分的數字儲存在陣列中,因此建立一個名為“digits”的空陣列。

步驟 3:然後進入一個 while 迴圈,該迴圈將繼續處理數字,直到它達到零。

步驟 4:在迴圈的每個步驟中,使用模運算子,我們將獲得提供的數字的最後一位數字,同時除以 10 來計算餘數。

步驟 5:我們將透過將其除以 10 來更新數字。此過程將繼續執行,直到數字變為零。

步驟 6:迴圈結束後,我們將數字儲存在 digits 陣列中,並按正確的順序作為單獨的專案顯示。

示例

//Define the number to split into digits
let num = 987456;
let digits = [];

while (num > 0) {
  digits.unshift(num % 10);
  num = Math.floor(num / 10);
}

console.log(digits);

輸出

[ 9, 8, 7, 4, 5 ]

複雜度

第一種方法的時間複雜度取決於將給定數字轉換為字串,第二種方法取決於我們使用模運算和除法來獲取數字。因此,這兩種方法的複雜度相同,為 O(log 10(num))。在此,num 是我們已找到其數字的數字。

結論

我們已經透過兩種方式在 Javascript 中解決了給定的任務。此外,程式碼需要一些 Javascript 的內建方法,這使得程式碼變得簡單和簡短。這兩個函式都能以不同的方式有效地找出給定數字的數字。

更新於:2023-08-16

2K+ 次檢視

啟動您的 職業生涯

透過完成課程獲得認證

立即開始
廣告