Sự miêu tả
Ví dụ, một giá trị sai là giá trị đánh giá là FALSE khi kiểm tra một biến. Chỉ có sáu giá trị falsey trong JavaScript: undefined
, null
, NaN
, ,
""
(chuỗi trống) và false
Đương nhiên.
Kiểm tra các giá trị giả trên các biến
Có thể kiểm tra giá trị giả trong một biến với một điều kiện đơn giản:
if (!variable) {
// When the variable has a falsy value the condition is true.
}
Ví dụ chung
var string = ""; // <-- falsy
var filledString = "some string in here"; // <-- truthy
var zero = 0; // <-- falsy
var numberGreaterThanZero // <-- truthy
var emptyArray = []; // <-- truthy, we'll explore more about this next
var emptyObject = {}; // <-- truthy
Vui với mảng
if ([] == false) // <-- truthy, will run code in if-block
if ([]) // <-- truthy, will also run code in if-block
if ([] == true) // <-- falsy, will NOT run code in if-block
if (![]) // <-- falsy, will also NOT run code in if-block
báo trước
Hãy nhận biết loại dữ liệu khi đánh giá một giá trị trong ngữ cảnh Boolean. Nếu kiểu dữ liệu của giá trị có nghĩa là một con sốđánh giá trung thực/sai có thể dẫn đến kết quả không mong muốn:
const match = { teamA: 0, teamB: 1 }
if (match.teamA)
// The following won't run due to the falsy evaluation
console.log('Team A: ' + match.teamA);
}
Một thay thế cho trường hợp sử dụng ở trên là đánh giá giá trị bằng cách sử dụng typeof
:
const match = { teamA: 0, teamB: 1 }
if (typeof match.teamA === 'number')
console.log('Team A: ' + match.teamA);
}