!value
var value;
value = {};
console.log(!value);
// false
value = undefined;
console.log(!value);
// true
value = null;
console.log(!value);
// true
value = 0;
console.log(!value);
// true
a || b
function out(a, b) {
console.log(a || b);
}
out('aaa', 'bbb');
// aaa
out(undefined, 'bbb');
// bbb
out(null, 'bbb');
// bbb
out(null, null);
// null
out(0, 'bbb');
// bbb
a && b
function out(a, b) {
console.log(a && b);
}
out('aaa', 'bbb');
// bbb
out(undefined, 'bbb');
// undefined
out(null, 'bbb');
// null
out(null, null);
// null
out(0, 'bbb');
// 0