null、undefined的 区别,== 、===的区别

1.

Object中null和undefined的区别?(常见前端面试题)

(1)数据类型层面:undefined是一个undefined数据类型,null是object数据类型

(2)内存分配层面:①如果一个变量没有赋值操作就是undefined  (var str;),所有变量在内存 分配的时候其默认值 都是undefined,而不是null. ②null:代表的是对象的默认值,可以清空对象,以后想要清空对象,则就是给它赋值为null .(注意:清空对象直接赋值为null,而不是用delete)

(3)运算层面:① var  n = 1 + undefined;

alert(n);    //NaN

       ②var  nn = 1+ nll ;

alert(nn);  //1  -->此时null相当于0

注意:js数据类型有如下几种:

①string字符串类型,

②number数字类型

③object对象(array数组、   null空[不具有任何对象的特性]、  data日期 、Regex正则)

④undefined 空对象

⑥布尔类型(true/false)

⑦funtion---->function、undefined都是一个数据类型,不是对象 

2.

infinity和NaN的区别?

NaN是代表是一个非正常四则运算而得出来的结果数字的代替

infinity它是正常计算过程中,一个数字除不尽的时候就得到无穷数,或者是计算结果超出数字的最大值也得到infinity。

注意:NaN不等于任何值,NaN === NaN   //false

false == 'false'    //false

false == undefined   //false

false == null    //false

null == undefined    //true

0 ==  ' '   //true

0 ===  ' ' ;    //false

3.

 “==”和“===”的区别?

var str = “0”   //string

var num = 0;  //number

console.log(str==num);    //true

console.log(str===num);    //false  比较了字面值,同时比较了数据类型

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值