js轉換字串為數值的方法

2022-09-08 01:33:10 字數 2734 閱讀 9293

在js讀取文字框或者其他表單資料的時候獲得的值是字串型別的,比如兩個文字框a和b,假設獲得a的value值為11,b的value值為9 ,那麼a.value要小於b.value,由於他們都是字串形式的.在網上找了一下js字串轉數字的文章,這個比較全

方法主要有三種

轉換函式、強制型別轉換、利用js變數弱型別轉換。

1. 轉換函式:

js提供了parseint()和parsefloat()兩個轉換函式。前者把值轉換成整數,後者把值轉換成浮點數。僅僅有對string型別呼叫這些方法,這兩個函式才幹正確執行;對其它型別返回的都是nan(not a number)。

一些示比例如以下:

**例如以下:

parseint("1234blue"); //returns 1234

parseint("0xa"); //returns 10

parseint("22.5"); //returns 22

parseint("blue"); //returns nan

parseint()方法還有基模式,能夠把二進位制、八進位制、十六進製制或其它不論什麼進製的字串轉換成整數。基是由parseint()方法的第二個引數指定的,示比例如以下:

**例如以下:

parseint("af", 16); //returns 175

parseint("10", 2); //returns 2

parseint("10", 8); //returns 8

parseint("10", 10); //returns 10

假設十進位制數包括前導0,那麼最好採用基數10,這樣才不會意外地得到八進位制的值。比如:

**例如以下:

parseint("010"); //returns 8

parseint("010", 8); //returns 8

parseint("010", 10); //returns 10

parsefloat()方法與parseint()方法的處理方式相似。

使用parsefloat()方法的還有一不同之處在於,字串必須以十進位制形式表示浮點數,parsefloat()沒有基模式。

以下是使用parsefloat()方法的演示樣例:

**例如以下:

parsefloat("1234blue"); //returns 1234.0

parsefloat("0xa"); //returns nan

parsefloat("22.5"); //returns 22.5

parsefloat("22.34.5"); //returns 22.34

parsefloat("0908"); //returns 908

parsefloat("blue"); //returns nan

2. 強制型別轉換

還可使用強制型別轉換(type casting)處理轉換值的型別。使用強制型別轉換能夠訪問特定的值,即使它是還有一種型別的。

ecmascript中可用的3種強制型別轉換例如以下:

boolean(value)——把給定的值轉換成boolean型;

number(value)——把給定的值轉換成數字(能夠是整數或浮點數);

string(value)——把給定的值轉換成字串。

用這三個函式之中的乙個轉換值,將建立乙個新值,存放由原始值直接轉換成的值。這會造成意想不到的後果。

當要轉換的值是至少有乙個字元的字串、非0數字或物件(下一節將討論這一點)時,boolean()函式將返回true。假設該值是空字串、數字0、undefined或null,它將返回false。

能夠用以下的**段測試boolean型的強制型別轉換。

**例如以下:

boolean(""); //false – empty string

boolean("hi"); //true – non-empty string

boolean(100); //true – non-zero number

boolean(null); //false - null

boolean(0); //false - zero

boolean(new object()); //true – object

number()的強制型別轉換與parseint()和parsefloat()方法的處理方式相似,僅僅是它轉換的是整個值,而不是部分值。示比例如以下:

**例如以下:

用  法 結  果

number(false) 0

number(true) 1

number(undefined) nan

number(null) 0

number( "5.5 ") 5.5

number( "56 ") 56

number( "5.6.7 ") nan

number(new object()) nan

number(100) 100

最後一種強制型別轉換方法string()是最簡單的,示比例如以下:

**例如以下:

var s1 = string(null); //"null"

var onull = null;

var s2 = onull.tostring(); //won't work, causes an error

3. 利用js變數弱型別轉換

舉個小樣例,一看,就會明確了。

**例如以下:

上例利用了js的弱型別的特點,僅僅進行了算術運算,實現了字串到數字的型別轉換,只是這種方法還是不推薦的

js轉換整數陣列為字串陣列的方法

今天在專案裡遇到個這樣的bug,element的el cascader控制項無法回顯資料,經過除錯後發現,是由於v model所繫結的陣列元素,必須為字串型別才行,整數型別是無法回顯的,需要做一次轉換,可以使用js陣列自帶的api進行轉換 array.map string 該api返回最新的字串陣列...

C 字串 string 和數值轉換方法

記錄一下在做題時的一大重點,字串和數值轉換的方法 1 stringstream流轉換 需匯入標頭檔案 include 既可以將字串轉換為數值,也可以將數值轉換為字串,但需要注意轉換型別。關於字串流的涉及轉換的其它內容就不寫了,只說下轉換 include include include 標頭檔案 2 ...

轉換字串為json物件的方法

轉換字串為json物件的方法 收藏 json是一種便於操作使用的輕量級資料交換格式。易於人閱讀和編寫。同時也易於機器解析和生成。具體介紹請檢視 很多時候我們需要組裝字串為json物件,首先要組合字串,然後轉換為json物件,如下面的例子 組合成了字串arr,下一步就是轉換成物件了,很快我們會想到使用...