js中的真假
1、在js中,若变量声明了未赋值,则为undefined。
为false的有: undefined、null、空字符串" "、0,
为true值的有: 空数组[ ],空对象{ }, 1, -1等等。
2、在js中,=== 和 == 是有区别的,前者是严格的等于号,会判断数据类型和值是否相等,而后者只会判断值是否相等。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
let a
if (a) {
console.log('undefined为真')
} else {
console.log('undefined为假')
}
let b = null
if (b) {
console.log('null为真')
} else {
console.log('null为假')
}
let c = 0
if (c) {
console.log('0为真')
} else {
console.log('0为假')
}
let d = []
if (d) {
console.log('[]为真')
} else {
console.log('[]为假')
}
let e = {}
if (e) {
console.log('{}为真')
} else {
console.log('{}为假')
}
let g = ''
if (g) {
console.log('""为真')
} else {
console.log('""为假')
}
let a1 = '-1'
let b1 = -1
if (a1 === b1) {
console.log('true')
} else {
console.log('false')
}
if (a1 == b1) {
console.log('a1 == b1 true')
} else {
console.log('a1 == b1 false')
}
</script>
</body>
</html>
实验结果为