Nếu tôi có biến chưa khai báo và sử dụng typeof
, nó cho tôi biết là undefined
. Nhưng nếu tôi sau đó kiểm tra nó bằng cách sử dụng if (qweasdasd === undefined)
nó ném một ngoại lệ.Sử dụng typeof vs === để kiểm tra biến không khai báo tạo ra kết quả khác nhau
Tôi không hiểu hành vi này, bởi vì nếu lần đầu tiên thông báo undefined
, thì kiểm tra thứ hai sẽ được đánh giá là if (undefined === undefined)
, tại sao nó lại ném ngoại lệ ReferenceError?
Không thể tái sản xuất: http://jsfiddle.net/y1xhw9un/ – Jamiec
@Jamiec - Có thể tái sản xuất: http: // jsfiddle.net/y1xhw9un/1/ – Quentin
@Quentin - ahh, thats * undeclared *, Khi nó không được xác định, thì nó hoạt động http://jsfiddle.net/y1xhw9un/2/ – Jamiec