在 JavaScript 中,有許多內建方法可以將數字轉換為陣列。最簡單的一種是 split() 方法。我們也可以使用 map()、reduce() 或 form() 方法來執行任務。本文討論了一些最受歡迎的將數字轉換為數組的方法,並提供了何時以及如何應用每種技術的範例。
現在的問題是,為什麼需要將數字轉換為陣列?那麼原因可能是將電話號碼拆分為單獨的數字或將日期分解為其組成部分(解析日期),或者在對單獨的數字執行數學運算時它可能很有用。
現在,我們來看看 split() 方法。它是一個有用的工具,可將字串分解為較小的子字串並將其轉換為數字。然後,它甚至可以通過將數字轉換為字串並將其拆分為單獨的數字來將數字轉換為數組。讓我們透過實作 split() 函數來看看,如範例所示。
在此範例中,我們使用函數 toString() 將整數轉換為字串。然後使用 split() 函數將字串分成單一字元的陣列。最終輸出將是一個字串數組,每個字串代表原始數字的一位數字。
<html> <body> <p id="print"></p> <script> let number = 12345; let numberArray = number.toString().split(""); document.getElementById("print").innerHTML = numberArray; </script> </body> </html>
透過使用map()方法,可以建立一個新數組,其中包含對呼叫數組中的每個元素執行給定函數的輸出。透過使用map()方法建立數字數組,它也可以用於將數字轉換為數組。以下是如何使用map() 方法將整數轉換為陣列的說明-
#在此範例中,我們首先使用函數toString() { [native code] }() 方法將整數轉換為字串。然後使用 Array.from() 函數將該字串轉換為陣列。最後,我們使用map()方法將字串陣列轉換為整數陣列
<html> <body> <p id="print"></p> <script> let number = 12345; let numberArray = Array.from(number.toString(), Number).map(Number); document.getElementById("print").innerHTML =numberArray; </script> </body> </html>
此方法是最簡單的一種,它使用 for 迴圈來迭代數字並將其轉換為數字數組。
在這個範例中,我們首先使用 toString() 方法將數字轉換為字串。然後我們使用 for 迴圈迭代數字,並使用 parseInt 方法轉換各個數字並將其推入陣列。
<html> <body> <p id="print"></p> <script> let number = 12345; let numberArray = []; for (let i = 0; i < number.toString().length; i++) { numberArray.push(parseInt(number.toString()[i])); } document.getElementById("print").innerHTML = numberArray; </script> </body> </html>
reduce() 方法是一種陣列方法,可用來將陣列縮減為單一值。在這個例子中,我們將使用reduce()方法將數字轉換為數字數組
在此範例中,我們首先使用`toString()` 方法。然後我們使用 split() 方法將字串拆分為單一字元的陣列。最後,我們使用「reduce()」方法迭代字元數組,將每個字元解析為整數並將其新增至最終數組,即本例中的累加器。
#<html> <body> <p id="print"></p> <script> let number = 12345; let numberArray = number.toString().split('').reduce((acc, curr) => { return [...acc, parseInt(curr)]; }, []); document.getElementById("print").innerHTML=numberArray ; </script> </body> </html>
現在,我們將學習另一種將數字轉換或變更為陣列的方法。所以,這裡我們將使用 Array.from method()。 Array.from 的作用是從可迭代或類似陣列的物件產生一個新陣列。在本例中,我們可以使用 Array.from() 方法將數字的字串表示形式轉換為單一數字的陣列。
現在,讓我們來看看上述方法的程式碼。
<html> <body> <p>Original number: 12345</p> <p id="result"></p> <script> const num = 12345; const arr = Array.from(num.toString(), Number); document.getElementById("result").innerHTML = arr.join(", "); </script> </body> </html>
在 JavaScript 中,有多種將數字轉換為陣列的方法,每種方法都有優缺點。 Split()'方法是最簡單的,而map()'、'for'和reduce()'方法功能更強、適應性更強,但需要更多專業知識。您可以根據專案的特定要求選擇最能滿足您需求的方法。
以上是如何在 JavaScript 中將數字轉換為陣列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!