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("无法读取到你的身高");
}
相关推荐
小高00714 分钟前
面试官:npm run build 到底干了什么?从 package.json 到 dist 的 7 步拆解
前端·javascript·vue.js
wayhome在哪25 分钟前
用 fabric.js 搞定电子签名拖拽合成图片
javascript·产品·canvas
JayceM1 小时前
Vue中v-show与v-if的区别
前端·javascript·vue.js
HWL56791 小时前
“preinstall“: “npx only-allow pnpm“
运维·服务器·前端·javascript·vue.js
咪咪渝粮2 小时前
JavaScript 中constructor 属性的指向异常问题
开发语言·javascript
无羡仙2 小时前
事件流与事件委托:用冒泡机制优化前端性能
前端·javascript
CodeTransfer2 小时前
今天给大家搬运的是利用发布-订阅模式对代码进行解耦
前端·javascript
鹏多多2 小时前
js中eval的用法风险与替代方案全面解析
前端·javascript
热爱2332 小时前
前端面试必备:原型链 & this 指向总结
前端·javascript·面试
Spider_Man2 小时前
面试官:你能手写 bind 吗?——JS this 全家桶趣味深度剖析
前端·javascript·面试