三元运算是一个固定的表达式:条件 ? 结果 : 结果
var today = new Date().getDay() == 0 ? '礼拜天' : '上班吧';
console.log(today);
// 结果:省略,视当前日期而定
这是比较简单的例子,当然无论是条件还是结果,都可以使用表达式。
组合嵌套
var today = new Date().getDay(); // 获取星期几,值 0~6,0为星期天
var weather = "rain"; // 天气情况
var schedule = today > 0 && today < 6 ? "上课" : weather == "rain" ? "下雨宅在家" : "出去潇洒";
console.log(schedule);
// 结果:省略
上面的三元运算嵌套实现的功能是,先判断星期几,如果是星期一到星期五则返回上课,否则是星期六和星期天,再嵌套一个三元运算,用来判断天气情况用来返回干什么。
总结
三元运算嵌套只能是用在第二个结果中进行嵌套,条件 ? 结果 : 结果(二次嵌套甚至一直嵌套)
条件 ? 结果 : 条件 ? 结果 : 条件 ? 结果 : 条件 ....