1. So sánh 2 gía trị bằng nhau
Trong javascript có thể so sánh giá trị bằng dầu (==) hoặc (===). Nhưng nó có một chút sợ biệt về việc sử dụng
dùng 2 dầu bằng (==)
Trong javascript có thể so sánh giá trị bằng dầu (==) hoặc (===). Nhưng nó có một chút sợ biệt về việc sử dụng
dùng 2 dầu bằng (==)
"42" == 42
# true
"\n\t 42 \t\n\n" == 42
# true
Một bên là string còn một bên khác lá số, kết quả so sánh sẽ trả về true nếu giá trị của 2 bên bằng nhau
dùng 3 dầu bằng(===) (strict equal)
Một số trường hợp cần thiết ví dụ validate..., nên sử dụng strict qual
dùng 3 dầu bằng(===) (strict equal)
Một số trường hợp cần thiết ví dụ validate..., nên sử dụng strict qual
"\n\t 42 \t\n\n" === 42
# false
2. Chú ý khi tính toán với kiểu số float0.1 + 0.2 = 0.30000000000000004
0.1 * 0.2 = 0.020000000000000004
0.1 + 0.2 === 0.3 => false
Rất bất ngờ khi nhìn kết quả tính toán ở trên. Tại sao tổng không phải 0.3 và kết qủa nhân không phải 0.02? Không chỉ riêng javascript, các ngôn ngữ khác cũng tương tự. Nếu muốn biết tại sao bạn có thể tìm hiểu ở đây http://floating-point-gui.de/basic/
3. null có bằng 0 không?
chắc chắn null sẽ không bằng 0 nhưng nếu thực hiện tính toán như bên dưới
3. null có bằng 0 không?
chắc chắn null sẽ không bằng 0 nhưng nếu thực hiện tính toán như bên dưới
null == 0
# false
null > 0
# false
null >= 0
# true
null < 0
# false
null <= 0
# true
theo tính toán tại sao lại null không bằng 0? 🤔
Nếu bạn đang nghi ngờ hãy xem câu trả lời ở đây https://stackoverflow.com/questions/2910495/why-null-0-null-0-but-not-null-0
4. NaN (not a number)
NaN(not a number) nghĩa là không phải là số nhưng nếu mình kiểm tra lại kiểu dữ liệu của nó lại tra về là kiểu number
typeof(NaN) => "number"
xem thêm : học lập trình android ở đâu
0 nhận xét:
Đăng nhận xét