Lập trình ReactJs 04: Javascript cần biết
15/06/2022 201 lượt xemKiến thức Javascript
So sánh tương đối / tuyệt đối
a = '1'; //string
b = 1; //number
== : so sánh tương đối chỉ so sánh về giá trị
console.log(a == b) //true
=== : so sánh tuyệt đối là so sánh cả về kiểu dữ liệu
console.log(a === b) //false
TƯƠNG TỰ VỚI CÁC TOÁN TỬ LOGIC KHÁC
Truthy và Falsy
+ Bất cứ giá trị nào trong Javascript khi chuyển đổi sang kiểu dữ liệu boolean mà có giá trị true thì ta gọi giá trị đó là Truthy
+ Bất cứ giá trị nào trong Javascript khi chuyển đổi sang kiểu dữ liệu boolean mà có giá trị false thì ta gọi giá trị đó là Falsy.
Trong Javascript có 6 giá trị sau được coi là Falsy:
1. false
2. 0 (số không)
3. '' or "" (chuỗi rỗng)
4. null
5. undefined
6. NaN
Thêm một ngoại lệ là document.all
+ document.all là một ngoại lệ chính thức duy nhất theo đặc tả ECMA (phiên bản 5).
+ Đặc tả này mô tả toàn bộ các object khi chuyển sang boolean sẽ là true.
+ Tuy nhiên, document.all là một ngoại lệ.
Cụ thể như sau:
+ document.all chuyển sang boolean sẽ là false
+ document.all khi là toán hạng của toán tử so sánh == hoặc != sẽ là undefined
+ Khi typeof document.all sẽ trả về "undefined"
console.log(false) // false
console.log(0) // false
console.log('') // false
console.log(null) // false
console.log(undefined) // false
console.log(NaN) // false