js 判断数据类型

1、判断是否是对象(null 也是一个对象,数组和函数返回false,对象返回true)

(bar !== null) && (bar.constructor === 'object')

2、判断数组

Array.isArray(bar);

3、NAN表示不是数字的值,类型是number类型

NAN === NAN; //false
//判断是否是数字
Number.isNaN();

4、js中数字全部用浮点精度处理,整数只在概念上存在,即数值始终作为浮点值存储(浮点数计算的bug)

console.log(0.1+0.2); // 0.3000000000000004
console.log(0.1+0.2 == 0.3) //false
var r = (0.3 - (0.1 + 0.2)).toFixed(2);

function addNum(num1, num2) {
    var sq1, sq2, m;
    try {
        sq1 = num1.toString().split(".")[1].length;
    } catch (e) {
        sq1 = 0;
    }
    try {
        sq2 = num2.toString().split(".")[1].length;
    } catch (e) {
        sq2 = 0;
    }
    m = Math.pow(10, Math.max(sq1, sq2));
    return (num1 * m + num2 * m) / m;
}

猜你喜欢

转载自blog.csdn.net/snow51/article/details/80738277