2010.05.14———javascript && ||

2010.05.14———javascript

1.|| 和 &&

逻辑或  ||

注意:类似逻辑与一样,如果两个操作数不都是bool类型的时候,返回值不一定是bool类型的

如果一个操作数是object另外一个是bool类型,返回object
例: document.body || false = object;


如果两个操作数都是object,返回第一个object
例: 123 || document.body = 123 ; document.body || 123 = object 

如果两个操作数都是null,返回null,NaN 和 undefined类似
例: null || null = null; NaN || NaN = NaN; undefined || undefined = undefined;


如果两个之中有一个是null或NaN或者undefined,返回另外一个操作数
例: null || 123 = 123; NaN || 123 = 123; undefined || document.body = object
;


逻辑与 &&

注意:逻辑与操作数可以是任何类型,不仅仅是bool类型的
当其中一个操作数不是bool类型时,其返回值不一定是bool类型的

如果一个操作数是object,另外一个操作数是bool类型的,返回bool值:
例: document.body && false = false; 


如果两个操作数都是object,返回第二个操作数
例: document.body && 123 = 123; 123 && document.body = object


任意一个操作数是null,返回null
任意一个操作数是NaN,返回NaN
任意一个操作数是undefined,返回undefined
例: true && null = null; true && NaN = NaN; true && undefined = undefined
;

你可能感兴趣的:(JavaScript,java)