<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JavaScript三元表達式</title>
</head>
<body>
<script>
//表達式 (expr1) ? (expr2) : (expr3)
//在 expr1 求值爲 TRUE 時的值爲 expr2,在 expr1 求值爲 FALSE 時的值爲 expr3。
//瞭解javaScript中的Boolean類型
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>JavaScript三元表達式</title>
</head>
<body>
<script>
//表達式 (expr1) ? (expr2) : (expr3)
//在 expr1 求值爲 TRUE 時的值爲 expr2,在 expr1 求值爲 FALSE 時的值爲 expr3。
//瞭解javaScript中的Boolean類型
var a="";
console.log("a:"+Boolean(a));//false
var b=null;
console.log("b:"+Boolean(b));//false
var c="1";
console.log("c字符串1:"+Boolean(c));//true
var d=0;
console.log("d:"+Boolean(d));//false
var e="Apple";
console.log("e:"+Boolean(e));//true
var o="orange";
console.log("o:"+Boolean(o));//true
//任何非空字符串,非0數字,任何對象轉boolean爲true;
//空字符串,數字0,NaN,undefined,null轉boolean爲false;
console.log("----------------------");
var t=b?c:d;
//如果b爲true值爲c,爲false時值爲d;
console.log(t);
//使用條件結構
if(b){
console.log(c);
}else{
console.log(d);
}
console.log("----------------------");
var f=b?c:d?e:o;
//如果b爲true值爲c,爲false時看b是否爲true,
//b爲true值爲e,否則爲o;
console.log(f);
//使用條件結構
if(b){
console.log(c);
}else if(d){
console.log(e);
}else{
console.log(o);
}
console.log("----------------------");
var dt = d&&o;
console.log("dt: "+dt);
//使用條件結構
if(d){
console.log("dt-->"+o)
}
console.log("----------------------");
var dd = d||o;
console.log("dd-->"+dd);
//使用條件結構
if(!d){
console.log(o);
}
//實際中的應用
//1.頁面值的轉義
var lx = 1;
var lxStr="";
var lxStr1="";
if(1==lx){
lxStr="待審覈";
}else{
lxStr="審覈通過";
}
console.log(lxStr);
lxStr1=(lx==1)?("待審覈"):("審覈通過");
console.log(lxStr1);
//2.處理參數;
var options={width:100,height:100,"method":"post"};
function post(title,options){
var newOptions={
//options爲true並且options.width爲true時使用options.width否則寬度爲500
width:options&&options.width?options.width:500,
height:options&&options.height?options.height:600,
title:title
}
return newOptions;
}
console.log("width: "+options.width);
console.log(options["width"]);
console.log("method:"+options["method"])
</script>
</body>
</html>
var a="";
var b=null;
var c="1";
var d=0;
var e="Apple";
var o="orange";
var t=b?c:d;
console.log(t);
//使用條件結構
if(b){
console.log(c);
}else{
console.log(d);
}
var f=b?c:d?e:o;
console.log(f);
//使用條件結構
if(b){
console.log(c);
}else if(d){
console.log(e);
}else{
console.log(o);
}
var dt = d&&o;
console.log("dt: "+dt);
//使用條件結構
if(d){
console.log("dt-->"+o)
}
var dd = d||o;
console.log("dd-->"+dd);
//使用條件結構
if(!d){
console.log(o);
}
//實際中的應用
//1.頁面值的轉義
var lx = 1;
var lxStr="";
var lxStr1="";
if(1==lx){
lxStr="待審覈";
}else{
lxStr="審覈通過";
}
console.log(lxStr);
lxStr1=(lx==1)?("待審覈"):("審覈通過");
console.log(lxStr1);
//2.處理參數;
var options={width:100,height:100,"method":"post"};
function post(title,options){
var newOptions={
width:options&&options.width?options.width:500,
height:options&&options.height?options.height:600,
title:title
}
return newOptions;
}
console.log("width: "+options.width);
console.log(options["width"]);
console.log("method:"+options["method"])
</script>
</body>
</html>