JavaScript数字与字符串转换
數(shù)字轉(zhuǎn)字符串的方式:
1->數(shù)字調(diào)用toString方法轉(zhuǎn)換為字符串.--num.toString().
2->數(shù)字作為形參調(diào)用String函數(shù).--String(num).
3->利用Javascript類型轉(zhuǎn)換的默認(rèn)屬性,數(shù)字加上空字符串""或''.
var num = 1234;
var str = num.toString();
var str = String(num);
var str = num + "";
var str = num + '';
字符串轉(zhuǎn)數(shù)字的方式:
1->字符串作為形參調(diào)用Number函數(shù).--Number(string).
注:
該函數(shù)運(yùn)行規(guī)則,從字符串開頭逐個(gè)字符判斷,當(dāng)遇到小數(shù)點(diǎn)或者非數(shù)字時(shí)停止.直接返回NaN.該函數(shù)只能轉(zhuǎn)換純數(shù)字的字符串.
JavaScript定義了全局變量NaN和Infinity.ECMAScript5修正了這個(gè)錯(cuò)誤,將它們定義為只讀的。
NaN(Not a Number)是一個(gè)特殊的Number類型的數(shù)字,表示不是一個(gè)數(shù).JavaScript中的非數(shù)字值都有一點(diǎn)特殊:它和任何值都不相等,包括自身。如判斷變量x是否是NaN應(yīng)當(dāng)使用x!=x來判斷,當(dāng)且僅當(dāng)x為NaN的時(shí)候,表達(dá)式的結(jié)果才為true。
Infinity是一個(gè)特殊的Number類型的數(shù)字 表示無窮大的數(shù).
2->字符串作為形參調(diào)用parseInt函數(shù).--parseInt(string).
注:
該函數(shù)運(yùn)行規(guī)則,首先判斷字符串開頭是否為數(shù)字,非數(shù)字時(shí)會(huì)直接返回NaN,不再繼續(xù)運(yùn)行.否則從字符串開頭逐個(gè)字符判斷,當(dāng)遇到小數(shù)點(diǎn)或者非數(shù)字時(shí)停止,返回前面讀取的數(shù)字.
3->字符串作為形參調(diào)用parseFloat()函數(shù).--parseFloat(string).
注:
該函數(shù)運(yùn)行規(guī)則,首先判斷字符串開頭是否為數(shù)字,非數(shù)字時(shí)會(huì)直接返回NaN,不再繼續(xù)運(yùn)行.否則從字符串開頭逐個(gè)字符判斷,當(dāng)遇到第二個(gè)小數(shù)點(diǎn)或者非數(shù)字時(shí)才會(huì)停止,返回前面讀取的數(shù)字.
該函數(shù)為parsrInt的強(qiáng)化版.遇到第一個(gè)小數(shù)點(diǎn)時(shí)繼續(xù)往后讀取.
var str = "123456";
var num = Number(str); -->123456
var num = parseInt(str); -->123456
var num = parseFloat(str); -->123456
var str = "123aaa";
var num = Number(str); -->NaN
var num = parseInt(str); -->123
var num = parseFloat(str); -->123
var str = "123.45678.9aaa";
var num = Number(str); -->NaN
var num = parseInt(str); -->123
var num = parseFloat(str); -->123.45678
var str = "a123";
var num = Number(str); -->NaN
var num = parseInt(str); -->NaN
var num = parseFloat(str); -->NaN
總結(jié)
以上是生活随笔為你收集整理的JavaScript数字与字符串转换的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 企业内刊设计
- 下一篇: 车主集体要求退一赔三索赔百万!高合:误会