刘作权博客
火华
javascript 双竖线 || 的含义
2014-07-09 17:25:47   阅读5471次
javascript 双竖线 || 的含义
Question:
  1. function test(name)

  2. {

  3.    var obj = document.getElementById(name);

  4.    if (!obj) { //这里的obj是个元素对象,为什么可以作为判断的条件,它是通过什么标准来判断是true还是false的?

  5.        //省略....

  6.    }

  7. }

  8. function clear(e, popid) {

  9.   e = window.event || e;  //双竖线(||)在javascript中不是表示或的意思吗?在这里是什么呢?e等于window.event或者等于e?

  10.   var s = e.relatedTarget || e.toElement;

  11.   //省略...

  12. }


Answers:
1.
“ if (!obj) {”是判断obj是否存在,就是页面里面是否有ID为“name”的元素,有的话就是true。
如果元素没有定义,那么 document.getElementById() 结果就为undefined,取反后为true。


2.
“e = window.event || e”不是说e等于window.event或者等于e,而是e等于window.event与e做或运算后的结果。
再举个例子:
<script> 
var a = "";
var c = a || "a为空时候显示信息";
alert(c);
</script> 
上面的用法是简单的双竖线的用法,如果a有值得话那么显示a的值,
当a没有赋值的时候则显示后面的信息,这样就很简单了;




-----------------------------------------------------
转载请注明来源此处
原地址:#

-----网友评论----
暂无评论
-----发表评论----
微网聚博客乐园 ©2014 blog.mn886.net 鲁ICP备14012923号   网站导航