תיאור
ערך מזויף הוא דבר שמעריך אותו כ- FALSE, למשל בעת בדיקת משתנה. ישנם רק שישה ערכים falsey ב- JavaScript: undefined
, null
, NaN
, 0
, ""
(מחרוזת ריקה), ואת false
כמובן.
בודק אם קיימים ערכים מזויפים במשתנים
ניתן לבדוק ערך מזויף במשתנה עם תנאי פשוט:
if (!variable) { // When the variable has a falsy value the condition is true. }
דוגמאות כלליות
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
כיף עם מערכים
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
אזהרה
היה מודע לסוג הנתונים בעת הערכת ערך בהקשר בוליאני. אם סוג הנתונים של הערך אמור להיות מספר , הערכה אמיתית / מזויפת יכולה לגרום לתוצאה בלתי צפויה:
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); }
חלופה למקרה השימוש לעיל היא הערכת הערך באמצעות typeof
:
const match = { teamA: 0, teamB: 1 } if (typeof match.teamA === 'number') console.log('Team A: ' + match.teamA); }
עוד מידע
- אמת | פוסט בבלוג - Truthy & Falsey
- שקר | מילון מונחים | MDN
- אמת ושקיה: כאשר הכל אינו שווה ב- JavaScript