JavaScript中truthy(真值)或者Falsy(假值)

● 在JavaScript中,有五个值是falsy
○ 0
○ ' '
○ undefined
○ null
○ NaN
除此之外,任何不是空值的都是真值;
假值是什么意思呢?就是转换为布尔值都是false,反则就是true

例如:

javascript 复制代码
console.log(Boolean(0));
console.log(Boolean(undefined));
console.log(Boolean('IT知识一享'));
console.log(Boolean({}));

例如

javascript 复制代码
const money = 0;
if (money) {
  console.log("大爷里面请");
} else {
  console.log("没钱你买个毛");
}

因为0是假值,我们只要给money赋一个大一点的值即可

javascript 复制代码
const money = 100;
if (money) {
  console.log("大爷里面请");
} else {
  console.log("没钱你买个毛");
}

再举一个例子

javascript 复制代码
let height;
if (height) {
  console.log(`你的身高为${height}`);
} else {
  console.log("无法读取到你的身高");
}

因为我们没有给height赋值,默认情况下,它是undefined的,所有是

javascript 复制代码
false;
let height = 168;
if (height) {
  console.log(`你的身高为${height}`);
} else {
  console.log("无法读取到你的身高");
}
相关推荐
腾讯TNTWeb前端团队6 小时前
helux v5 发布了,像pinia一样优雅地管理你的react状态吧
前端·javascript·react.js
拉不动的猪9 小时前
刷刷题50(常见的js数据通信与渲染问题)
前端·javascript·面试
拉不动的猪9 小时前
JS多线程Webworks中的几种实战场景演示
前端·javascript·面试
uhakadotcom11 小时前
Astro 框架:快速构建内容驱动型网站的利器
前端·javascript·面试
uhakadotcom11 小时前
了解Nest.js和Next.js:如何选择合适的框架
前端·javascript·面试
uhakadotcom11 小时前
Remix 框架:性能与易用性的完美结合
前端·javascript·面试
uhakadotcom11 小时前
Node.js 包管理器:npm vs pnpm
前端·javascript·面试
咖啡教室12 小时前
前端开发日常工作每日记录笔记(2019至2024合集)
前端·javascript
咖啡教室12 小时前
前端开发中JavaScript、HTML、CSS常见避坑问题
前端·javascript·css
市民中心的蟋蟀15 小时前
第五章 使用Context和订阅来共享组件状态
前端·javascript·react.js