||会遇见的面试题

本文探讨了JavaScript中逻辑运算符||的工作原理。通过实例展示了当条件为真或假时,运算符如何返回不同结果。重点讲解了在布尔值转换和短路求值中的行为,揭示了在面对undefined、null、0、NaN、空字符串等 falsy 值时的处理方式。理解这一知识点对于优化代码逻辑至关重要。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

知足且坚定,温柔且上进。

首先要知道 || 是运算符。

我们平常会用它做一些判断,例如当有一个条件为真时,就会返回true,全部条件为假时,就会返回false,然而事实真的是这样返回吗?

也不尽然。看下面。

const res = ('' || 0 || 1 || 2)
//1
const res = ('' || 0 || null)
//null
const res = ('' || null || 0)
//0

上面三道题,输出了res的结果。

第一题 和 后面两题的区别是 后面两题 || 左右的布尔值都是false

先看第一题:
输出1,可见,当有条件的布尔值为true时,就会返回第一个为true的条件
再看第二和第三题:
条件都为false,返回的都是最后一个

总结,|| 会返回第一个Boolean转换后为true的条件,没有则返回最后一个条件。

以下一些数据Bollean后的结果为false,要做到看见他们默认把他们当作false。

undefined
null
false
0
NaN
""或’’(空字符串)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

前端纸飞机

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值