8、相等运算符
==
- 相等运算符,用来比较两个值是否相等
- 使用相等运算符比较两个不同类型的值时,
它会将其转换为相同的类型(通常转换为数值)然后再比较
类型转换后值相同也会返回true - null和undefined进行相等比较时会返回true
- NaN不和任何值相等,包括它自身
===
- 全等运算符,用来比较两个值是否全等
- 它不会进行自动的类型转换,如果两个值的类型不同直接返回false
- null和undefined进行全等比较时会返回false
!=
- 不等,用来检查两个值是否不相等
- 会自动的进行类型转换
!==
- 不全等,比较两个值是否不全等
- 不和自动的类型转换
<script>
let result = 1 == 1 // true
result = 1 == 2 // false
result = 1 == '1' // true
result = true == "1" // true
result = null == undefined // true
result = NaN == NaN // false
result = 1 === "1" // false
result = null === undefined // false
result = 1 != 1 // false
result = 1 != "1" // false
result = 1 !== "1" // true
console.log(result)
</script>
9、条件运算符
条件运算符
条件表达式 ? 表达式1 : 表达式2
- 执行顺序:
条件运算符在执行时,会先对条件表达式进行求值判断,
如果结果为true,则执行表达式1
如果结果为false,则执行表达式2
<script>
// false ? alert(1) : alert(2)
let a = 100
let b = 200
// a > b ? alert('a大!') : alert("b大!")
let max = a > b ? a : b
// alert(max)
</script>