您的位置:首页 > Web前端 > JavaScript

javascript中的 && 与 || 的运用

2014-09-16 17:15 141 查看
a && b : 将a, b转换为Boolean类型, 再执行逻辑与, true返回b, false返回a

a || b : 将a, b转换为Boolean类型, 再执行逻辑或, true返回a, false返回b

转换规则:
对象为true
非零数字为true
非空字符串为true
其他为false

* 几乎所有语言中||和&&都遵循“短路”原理,
* 如&&中第一个表达式为假就不会去处理第二个表达式,而||正好相反。
* js也遵循上述原则。
* 当||时,找到为true的分项就停止处理,并返回该分项的值,否则执行完,并返回最后分项的值。
* 当&&时,找到为false的分项就停止处理,并返回该分项的值。

// var a = "" || null || 3 || 4;//3
// alert(a);
// var b = 4 && 5 && null && "0";//null
// alert(b);

剖析:"" , null均为false

例如:在人事系统中用到的:

//type:alert_success,alert_error,alert_doubt   isExist:false,true(是否包含按钮),text:内容
function createAllAlert(type, text, isExist) {
var parentdiv = $("<div class='alertInfor'> <div class='btns'></div><p>" + text + "</p></div>");
$(document.body).append(parentdiv);
$('.alertInfor').addClass(type);
var buttonEle = $("<input type='button' value='提交' class='btnSuccess fl'> <input type='button' value='取消' class='btnCancel fl'>");
isExist && $('.btns').append(buttonEle);

alertShow($('.'+type));

$(".btnCancel").click(function () {
removeAlert($('.' + type));
});
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: