回顾一下JavaScript的null, undefined

回顾一下JavaScript的null, undefined
2011年01月01日
   1、null, undefined在条件判断时都为false值
  assert(! null );
  assert(! undefined);
  还有 空字符, 0, NaN
  assert(! "");
  assert("\n\t" == false)
  assert(! 0);
  assert(! NaN);
  2、undefined值派生自null值,但是值等类型不等
  assert(null == undefined); //值等
  assert(! (null === undefined));// 值等类型不等
  null值的类型是Object,undefined值的类型是Undefined
  assert(typeof null == 'object');
  assert(typeof undefined == 'undefined');
  3、变量已声明但未初始化,其值是undefined
  var a; //相当于var a = undefined;
  assert(a == undefined);
  assert(a == null);
  assert(a != 1);
  assert(typeof a == 'undefined');
  4、未声明过的变量不可参与表达式计算,但可使用typeof操作符判断其类型
  try{
  c == undefined ? 0 : 1; // 不可使用未声明的变量参与计算, 否则抛ReferenceError异常
  }catch(e){
  console.log(e); //ReferenceError: c is not defined
  }
  assert(typeof(b) == 'undefined'); // 未声明过的变量类型为Undefined
  注: assert方法简单实现:
  function assert(expr){
  if(expr !== true){
  throw "Assert error";
  }
  }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值