undefined === undefined || undefined > undefined
và undefined >= undefined
, OR trong "lớn hơn hoặc bằng" không giống như thế này HOẶC ||
.
Khi có liên quan, các toán tử so sánh như >, <, >=
v.v ... có nghĩa là đối với các số và undefined
không phải là số, undefined
không được xác định.
Bạn mong đợi điều gì khi giá trị trả lại là 10 >= "Hello World"
? Tất nhiên là sai, nhưng lại một lần nữa 10 >= "10"
trả về true
vì 10 == "10"
là đúng và 10 === "10"
là sai. "10" có thể được chuyển đổi thành một số để chúng tôi thấy kết quả có thể được trả lại trong trường hợp số thực và không phải là chuỗi có số.
Không có phiên bản điều hành bình đẳng nghiêm ngặt cho >=
như trái ngược với !=
đó là !==
Một số điều thực sự kỳ lạ và khó hiểu xảy ra khi bạn cố gắng so sánh null
, undefined
, NaN
- Đây là điều mà các đặc điểm kỹ thuật của JavaScript có thể có thể trả lời và vì JavaScript là một ngôn ngữ rất lỏng lẻo và các loại rất linh hoạt, đó là lý do tại sao người ta có thể so sánh 10
và "10"
và vẫn nhận được kết quả mà bạn có thể chỉ nhận được khi so sánh hai số nguyên trong hầu hết các ngôn ngữ khác.
Các câu hỏi và thảo luận được chào đón nhiều hơn so với bỏ phiếu trực tiếp. Cảm ơn.
Nguồn
2017-10-06 15:07:10
Đoán của tôi là cả hai 'undefined' đều bị ép buộc thành 'NaN' không bằng với chính nó. – Xufox
'undefined === undefined || undefined> undefined' và 'undefined> = undefined', OR trong" lớn hơn hoặc bằng "không giống với OR' || ' –
@DeepakKamat điều gì xảy ra sau hậu trường'> = '? Tôi nghĩ rằng đó là những gì câu hỏi này là nhận được tại – theonlygusti