JS基础_逻辑运算符

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript">
			
			/*
			 * JS中为我们提供了三种逻辑运算符
			 * ! 非
			 * 	- !可以用来对一个值进行非运算
			 * 	- 所谓非运算就是值对一个布尔值进行取反操作,
			 * 		true变false,false变true
			 * 	- 如果对一个值进行两次取反,它不会变化
			 * 	- 如果对非布尔值进行元素,则会将其转换为布尔值,然后再取反
			 * 		所以我们可以利用该特点,将一个其他的数据类型转换为布尔值
			 * 		可以为一个任意数据类型取两次反,将其转换为布尔值,
			 * 		原理和Boolean()函数一样
			 * 
			 * && 与
			 * 	- &&可以对符号两侧的值进行与运算并返回结果
			 * 	- 运算规则
			 * 		- 两个值中只要有一个值为false就返回false,
			 * 			只有两个值都为true时,才会返回true
			 * 		- JS中的“与”属于短路的与,
			 * 			如果第一个值为false,则不会看第二个值
			 * 
			 * || 或
			 * 	- ||可以对符号两侧的值进行或运算并返回结果
			 * 	- 运算规则:
			 * 		- 两个值中只要有一个true,就返回true
			 * 			如果两个值都为false,才返回false
			 *		- JS中的“或”属于短路的或
			 * 			如果第一个值为true,则不会检查第二个值
			 */


			var a = false;
			a = !a;
			alert("a = "+a);//a = true
			
			var b = 10;
			b = !!b;
			alert("b = "+b);//b = true
			alert(typeof b);//boolean

			//-----------------------------------------------------
			//如果两个值都是true则返回true
			var result = true && true;
			//只要有一个false,就返回false
			result = true && false;
			result = false && true;
			result = false && false;
			
			//第一个值为true,会检查第二个值
			true && alert("看我出不出来!!");
			
			//第一个值为false,不会检查第二个值
			false && alert("看我出不出来!!");
			
			//-----------------------------------------------------
			//两个都是false,则返回false
			result = false || false;
			
			//只有有一个true,就返回true
			result = true || false;
			result = false || true ;
			result = true || true ;
			alert("result = "+result);
			
			//第一个值为false,则会检查第二个值
			false || alert("123");
			
			//第一个值为true,则不再检查第二个值
			true || alert("123");
			
			
		</script>
	</head>
	<body>
	</body>
</html>

实际开发中:

if (jobid == undefined || jobid == null || jobid == '')

// 编辑
$("#btn_manager_job_edit").unbind("click");
$("#btn_manager_job_edit").on('click', function(){
	//设置opflag
	$("#opflag").val(2);
	var jobid = $("#new_manager_jobid").val();
	if (jobid == undefined || jobid == null || jobid == ''){
		swal('提示', '请选择一个岗位!','warning');
		return false;
	}else{
		$("#new_manager_jobname").removeAttr("readonly");
		$("#new_manager_jobdescp").removeAttr("readonly");
	}
});

if(dataArr == null || dataArr.length == 0) 

function initPerSelWinDevtpSelect(projid) {
	$.ajax({
	    type: "POST",
	    url: ctx+"/project/project/place/devtplist",
	    data: {projectid: projid},
	    dataType: 'json',
	    success: function (dataArr) {
	    	if(dataArr == null || dataArr.length == 0){
	    		swal('提示',"没有查询到设备类型数据!",'info'); //success
	    		return;
	    	}
	    	$("#per_dev_devsel_win_devtp").empty();
	    	var option = $("<option>").val("").text("请选择设备类型");
    	  	$("#per_dev_devsel_win_devtp").append(option);
	    	for(var i in dataArr){
	    		var devTpName = dataArr[i].typename;
	    		var devTpId = dataArr[i].typeid;
	    		var option = $("<option>").val(devTpId).text(devTpName);
	    	  	$("#per_dev_devsel_win_devtp").append(option);
	    	}
	    	// 补充蓝牙标签选择...
	    	option = $("<option>").val("claa_btlabel").text("蓝牙定位标签");
    	  	$("#per_dev_devsel_win_devtp").append(option);
	    	$("#per_dev_devsel_win_devtp").val("");
	    },
	    error: function (err) {
	    	var error = "["+err.status+"]"+err.responseText;
	    	console.log(error);
	    }
	});	
}

if(data!='' && data != null && data != undefined) 

//列定义
function getBeaconColumnsDef(){
	var columnDefines = new Array();
	columnDefines.push({"data": "srm_form_remark","title":"备注", "visible":true, defaultContent:" ",className:"big",
		render:function( data, type, row){
		  	if(data!='' && data != null && data != undefined){
				return "<div title='"+data+"' style='overflow: hidden;text-overflow: ellipsis;white-space: nowrap;width:180px'>"+data+"</div>";
		  }
		}
	});
	return columnDefines;
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ZHOU_VIP

您的鼓励将是我创作最大的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值