你不知道的前端小知识
来挑战一下你的前端小知识,看看你能答对几个呢
Level_0
console.log(null) // null
console.log(undefined) // undefined
console.log(Number(null)) // 0
console.log(Number(undefined)) // NaN
console.log(Number("hello")) // NaN
Level_1
console.log(NaN + '123') // NaN123
// 0 | NaN | '' | null | undefined 为 false,其他都是true
console.log(Boolean(NaN)) // false
console.log(100 * false) // 0
console.log(typeof (100 - null)); // number
Level_2
var result = 5 && 6 // return 6
console.log(result)
result = 0 && 2 // return 0
console.log(result)
result = 0 || 1 // return 1
console.log(result)
result = 1 || 0 // return 1
console.log(result)
// !!!!!!!!!!! 从哪里结束,返回断点 !!!!!!!!
Level_3
// hello -> NaN, 与任何值比较都是false
console.log(1 > "hello") // false
console.log("11" > "5") // false, '5'>'11' 字符串比较
console.log("11" > +"5") // true, 转数字比较
console.log(NaN == NaN) // false, NaN 不和任何值相等,包括 NaN, 只能用isNaN方法
console.log(undefined == null) // true 值含义相同
console.log(undefined === null) // false 类型不等
var x = 1 || 2 && 3
console.log(x) // 1 你猜对了吗