原理:判斷是不是非數,使用isNaN();方法,主要用來判斷是不是NaN,由於NaN == NaN是返回false的。非數返回true,不是非數則返回true。數組
注意點:內部會進行隱式轉換app
代碼舉例:注意一下的爲true的結果dom
isNaN(NaN); // true isNaN(parseFloat('abc')); // true,非數 isNaN(37); // false isNaN("37"); // false,內部隱式轉化了 isNaN("asd"); // true, isNaN(""); // false: 會被轉化轉化成0 isNaN(" "); // false: 會被轉化轉化成0 isNaN(undefined); // true isNaN({}); // true isNaN(null); // false isNaN(true); // false isNaN(null); // false
原理:判斷是不是有限的,有限返回true。函數
注意點:內部會進行隱式轉換spa
代碼舉例:注意一下的爲true的結果prototype
isFinite(Infinity); // false,無限大 isFinite(NaN); // false isFinite(-Infinity); // false,負無限大 isFinite(2/0); // false:2/0 的結果是 Infinity isFinite(0); // true isFinite(2e64); // true isFinite(null); // true
一、字符串轉浮點數字code
parseFloat('4.6');// 4.6
二、字符串轉整形,也能夠拿來作進制轉換,字符串轉數字,默認轉爲10進制,與之對應的方法是toString方法,轉爲某一進制。對象
//後邊的位數可使 2 到 32 ,若是該參數小於 2 或者大於 36,則 parseInt() 將返回 NaN。 //其實默認的時候是轉爲10進制,注意前面的string必須合法,後邊表示的是進制 parseInt('4.6', 10); //返回 4 parseInt("10"); //返回 10 parseInt("19",10); //返回 19 (10+9) parseInt("11",2); //返回 3 (2+1) parseInt("17",8); //返回 15 (8+7) parseInt("1f",16); //返回 31 (16+15) parseInt("010"); //未定:返回 10 或 8
三、進制轉換,轉爲某種進制,結果是一個字符串blog
// 轉換數值到指定的進制,必須是一個Number類型,進制是2~36 Number(12).toString(5); // "22"
Number(1000).toString(2); // "1111101000"
四、數字轉字符串,在以前或者以後 +「」 便可ci
"" + 123; //"123" 123 + ""; //"123"
Number.prototype.toFixed([精度]);//取幾位小數。會對取的最後一位數字作四捨五入的操做。注意:返回值類型爲字符串。默認是取整 3.1415.toFixed(2);// '3.14' 3.1455.toFixed(2);// '3.15' 3.1415.toFixed();// '3' Number.prototype.toPrecision(有效數字);//返回知足有效位數的字符串。會對取的最後一位數字作四捨五入的操做。 3.1415.toPrecision(2);// '3.1' 3.1544.toPrecision(2);// '3.2' 13.1415.toPrecision(2);// '13' 130.515.toPrecision(2);// 1.3e+2 Number.prototype.toExponential(有效數字);//返回數字的科學計數法的字符串。在上邊的基礎上轉換爲科學計數 3.14.toExponential()// '3.14e+0' 1300000000.1415.toExponential(2)// '1.30e+9' Number.MIN_VALUE - 最小值。小於這個值的會被轉換成 0。 Number.MIN_VALUE; // 5e-324 Number.MAX_VALUE - 最大值。大於這個值的會被轉換成 Infinity。 Number.MAX_VALUE; // 1.79e+308
Math.PI - 圓周率的近似值。 Math.PI; // 3.14159... Math.ceil(數字) - 若是是小數,返回比參數大最近的整數。 Math.ceil(4.3);// 5 Math.ceil(4.8);// 5 Math.ceil(-4.3);// -4 向上取整,取到-4 Math.ceil(2);// 2 Math.floor(數字) - 若是是小數,返回比參數小最近的整數。 Math.floor(3.5);// 3 Math.floor(-3.5);// -4 Math.round(數字) - 四捨五入。 Math.round(3.5);// 4 Math.round(-3.5);// -3 因而可知,這個並非簡單的逆過來,依據其基本的規則直接取得。 Math.round(-3.6);// -4 Math.round(3.4);// 3 Math.round(-3.4);// -3 Math.random() - 返回 0 到 1 之間的一個隨機數。包括 0,不包括1。 Math.random();// 多是 0.008179764728993177 Math.random();// 多是 0.493650607066229 Math.abs(數字) - 返回絕對值。 Math.abs(-2); // 2 Math.abs(2); // 2 Math.abs(0); // 0 Math.min(數字1[, 數字2, [, ...] ] - 返回一羣數字中的最小值。與其相反的函數爲 Math.max。 Math.min(0, 10, 5.4, -3.4); // -3.4 Math.min.apply(null,[0, 10, 5.4, -3.4]); // -3.4 (求數組中的最小值) Math.pow(x,y); - 求取x的y次方 Math.pow(3,2);//9 Math.pow(3,2.1);//10.04510856630514 Math.sqrt(x); - 求x的平方根 Math.sqrt(50);//7.0710678118654755 new Date().valueOf();//1475333477365 Math 上還有與三級函數,指數,冪相關的函數。