JavaScript數字和字串轉換的應用

來源:互聯網
上載者:User

這篇文章主要介紹了JavaScript數字和字串轉換的應用,需要的朋友可以參考下

1. 數字轉換為字串 

 

a. 要把一個數字轉換為字串,只要給它添加一個空的字串即可: 

 代碼如下:

var n = 100; 

var n_as_string = n + ""; 

 

b. 要讓數字更加顯式地轉換為字串,可以使用String()函數: 

代碼如下:

var string_value = String(number); 

 

c. 使用toString()方法: 

 代碼如下:

string_value = number.toString(); 

 

Number對象的(基本的數字轉換為Number對象,以便可以調用這個方法)toString()方法有一個可選的參數,該參數用來指定轉換的基數。如果不指定這個參數,轉換會以10為基數進行。然而,也可以按照其他的基數(2到36之間的數)來轉換數字。 

例如: 

代碼如下:

var n = 17; 

binary_string = n.toString(2); // Evaluates to "10001" 

octal_string = "0" + n.toString(8); // Evaluates to "021" 

hex_string = "0x" + n.toString(16); // Evaluates to "0x11" 

 

d. toFixed()方法把一個數字轉換為字串,並且顯示小數點後的指定的位元。它不使用指數標記法。 

 代碼如下:

var n = 123456.789; 

n.toFixed(0); // "123457" 

n.toFixed(1); // "123456.79" 

 

e. toExponential()使用指數標記法把一個數字轉換為字串,小數點前面有1位元,而小數點後面有特定的位元。 

 代碼如下:

var n = 123456.789; 

n.toExponential(1); // "1.2e+5" 

n.toExponential(3); // "1.235e+5" 

 

f. toPrecision()使用指定的有意義的位元來顯示一個數字,如果有意義的位元還不夠顯示數位整個整數部分,它就使用指數標記法。 

 代碼如下:

var n = 123456.789; 

n.toPrecision(4); // "1.235e+5" 

n.toPrecision(7); // "123456.8" 

 

2. 字串轉換為數字 

 

a. 將一個字串轉換為數位一種缺少些技巧但是很清楚明白的方法就是:把Number()建構函式作為一個函數來調用: 

代碼如下:

var number = Number(string_value); 

 

b. parseInt()只截取整數,如果一個字串以"0x"或"0X"開頭,parseInt()將其解析成為一個十六進位的數字,parseInt()甚至可以接受一個參數來指定要解析的數位基數,合法的值在2到36之間。 

代碼如下:

parseInt("3 blind mice"); // Returns 3 

parseInt("12.34"); // Returns 12 

parseInt("0xFF"); // Returns 255 

parseInt("11", 2); // Returns 3 (1 * 2 + 1) 

parseInt("ff", 16); // Returns 255 (15 * 16 + 15) 

parseInt("zz", 36); // Returns 1295 (35 * 36 + 35) 

parseInt("077", 8); // Returns 63 (7 * 8 + 7) 

parseInt("077", 10); // Returns 77 (7 * 10 + 7) 

 

c. parseFloat()截取整數和浮點數。 

 代碼如下:

parseFloat("3.14 meters"); // Returns 3.14 

 

d. 如果parseInt()和parseFloat()不能夠把指定的字串轉換為數字,它們就會返回NaN: 

 代碼如下:

parseInt(''eleven"); // Returns Nan 

parseFloat("$72.47"); // Returns NaN 

 

3 JavaScript取整的方法 

 

a.丟棄小數部分,保留整數部分 

parseInt(5/2) 

 

b.向上取整,有小數就整數部分加1 

 

Math.ceil(5/2) 

 

c.向下取整 

 

Math.floor(5/2) 

 

d.四捨五入 

 

Math.round(5/2) 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.