the number 0
the BigInt 0n
the keyword null
the keyword undefined
the boolean false
the number NaN
the empty string "" (equivalent to '' or ``)
// JS Essentials: Falsy Values
false
undefined
null
NaN
0 or +0 or -0
"" or '' or `` (empty string)
// Everything else is truthy
//false,0,"",undefined,NaN are falsy value and all other value are truthy in js
undefined
null
NaN
0
"" (empty string)
false
false //The keyword false.
0 //The Number zero (so, also 0.0, etc., and 0x0).
-0 //The Number negative zero (so, also -0.0, etc., and -0x0).
0n, -0n //The BigInt zero and negative zero (so, also 0x0n/-0x0n).
"", '', `` //Empty string value.
null //the absence of any value.
undefined //the primitive value.
NaN //not a number.
document.all
//Objects are falsy if and only if they have the [[IsHTMLDDA]] internal slot.
//That slot only exists in document.all and cannot be set using JavaScript.
// falsy values in javascript
1) false
2) 0, -0, 0n
3) null
4) undefined
5) NaN
6) "", '', `` // empty string
if (true)
if ({})
if ([])
if (42)
if ("0")
if ("false")
if (new Date())
if (-42)
if (12n)
if (3.14)
if (-3.14)
if (Infinity)
if (-Infinity)
let a = false
let b = 0
let c = -0
let d = 0n
let e = ''
let f = null
let g = undefined
let h = NaN
//check falsy value using Boolean()
//if it falsy it return false
let falsyValue = [0, "", NaN, undefined, false, null, -0, 022, 100, {}, []]
falsyValue.forEach(ele => {
console.log(Boolean(ele))
})
if (false)
if (null)
if (undefined)
if (0)
if (-0)
if (0n)
if (NaN)
if ("")
false
0
- 0
""
null
undefined
NaN