今天在看一些js代码的时候,发现了如下部分代码:ide
var btn = $("#addBtn_"+treeNode.tId); if (btn) btn.bind("click", function(){ parentNode = treeNode; openCatgDialog({parent_id: treeNode.sid, method: 'add'}); return false; });
而后我就有点懵懂了,通常上if(条件)中的条件不是true 或 false 么? 为何这里使用一个变量。后来通过查找部分资料才了解。原来if(条件)中的条件为 { 0 , 1 , true , false , null , ' ' , undefined ,非空 } 时均可以,其中
it
{ 0 , false , null , ' ' , undefined } => false { 1 , true , 非空 } => true
例如:io
var i = 0; if(i) { console.info("返回true"); } else { console.info("返回false"); } // 在控制台输出:返回false