逻辑运算符第 3 部分
本课属于 Coddy JavaScript 学习旅程的“基础知识”单元。第 21 课,共 77 课。
处理逻辑表达式时,有时我们需要对它们进行简化或重新排列。
在由 &&(and)连接的两个条件前加上 !(not),可以将它拆分成两个独立的部分。&&(and)会变成 ||(or),并且每个部分前面都会加上自己的 !(not):
!(A && B) 与 (!A) || (!B) 相同
例如:
// 我们来检查一个数字是否不在 1 到 10 之间。
let number = 15
// 这两个表达式是等价的:
let result1 = !(number >= 1 && number <= 10)
let result2 = !(number >= 1) || !(number <= 10)
console.log(result1) // True
console.log(result2) // True反过来也成立:!(A || B) 和 (!A) && (!B) 是一样的。
例如:
// 检查一个人是否既不是学生,也没有工作
let is_student = false
let is_employed = false
// 这两个表达式是等价的:
let result1 = !(is_student || is_employed)
let result2 = !is_student && !is_employed
console.log(result1) // True
console.log(result2) // True挑战
入门你正在帮助一家宠物店创建一个系统,用来判断是否可以把宠物卖给顾客。
初始化以下变量:
has_license,值为truehas_space,值为falsehas_experience,值为true
编写以下逻辑表达式,判断:
can_sell_regular_pet:顾客需要有执照或经验,并且必须有空间can_sell_exotic_pet:顾客需要同时有执照和经验,并且必须有空间cannot_sell_any_pet:顾客没有执照也没有经验,或者没有空间
亲手试试
// 初始化变量
// 在这里声明任务中列出的三个变量
// 计算条件
// 把下面的每个占位符替换为任务描述的逻辑表达式
let can_sell_regular_pet = false
let can_sell_exotic_pet = false
let cannot_sell_any_pet = false
// 不要删除下面的代码行
console.log("Can sell regular pet:", can_sell_regular_pet)
console.log("Can sell exotic pet:", can_sell_exotic_pet)
console.log("Cannot sell any pet:", cannot_sell_any_pet)这节课包含一个小测验。开始学习即可作答,并记录你的进度。
基础知识中的所有课
自己练习: JavaScript 在线编译器