簡體   English   中英

為什么要使用tostring方法將數字轉換為Javascript中的字符串?

[英]why do convert numbers to string in Javascript using tostring method?

我想知道為什么人們必須將數字轉換為字符串。 這種轉換的實際用途是什么? 同樣,為什么開發人員使用parseInt或parseFloat將字符串轉換為數字。 謝謝

如果要對字符串形式的數字進行算術運算,則使用parseIntparseFloat很重要。 例如

"42" + 1 === "421"
parseInt("42") + 1 === 43;

當您要對當前為數字的值執行字符串操作時,情況則相反。

42 + 1 === 43
(42 + "") + 1 === 421

為什么要做前者或后者是非常特定的場景。 我敢打賭將字符串轉換為數字以進行算術運算的情況是最突出的情況。

變量的數據類型是JavaScript腳本引擎對變量當前保存的數據類型的解釋。 一個字符串變量保存一個字符串; 數字變量保存數字值,依此類推。 但是,與許多其他語言不同,在JavaScript中,相同的變量可以保存不同類型的數據,所有數據都在同一應用程序內。 這是一個術語,即松散類型和動態類型,這兩個概念都意味着JavaScript變量可以根據上下文在不同時間保存不同的數據類型。

使用松散類型的語言,您不必事先聲明變量將是字符串,數字還是布爾值,因為實際上是在處理應用程序時確定數據類型。 如果您從一個字符串變量開始,然后想將其用作數字,那很好,只要該字符串實際上包含類似於數字的內容而不是諸如電子郵件地址之類的東西即可。 如果以后您想再次將其視為字符串,也可以。

松散類型的寬容性質最終會導致產生問題。 如果您嘗試將兩個數字加在一起,但是JavaScript引擎將持有其中一個的變量解釋為字符串數據類型,那么最終將得到一個奇數字符串,而不是您期望的總和。 當涉及到JavaScript的變量和數據類型時,上下文就是一切。

將數字轉換為字符串很有用的一個示例是,當您想以某種方式格式化數字時,例如像貨幣(1234.56-> $ 1,234.56)。

當您要對表示數字的字符串進行算術運算時,反之很有用。 假設您有一個文本框,允許用戶輸入數字。 該文本框的值將是一個字符串,但是您需要將其作為數字來執行一些算術運算,因此您將使用parseIntparseFloat

字符串->數字

考慮使用JS進行簡單的數字驗證。 如果可以將字符串轉換為數字,則可以在將該數字過帳到數字之前或在算術運算中使用之前驗證該數字。

數字->字符串

字符串連接主要和顯示目的。 無論如何,該語言通常都會使用隱式轉換將數字轉換為字符串,例如:

1 + " new answer has been posted"

請記住,JavaScript是一種松散類型的語言。 這可以隱藏許多正在發生的隱式類型轉換。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM