js中 ^ !! ! 运算符的巧用 / 判断开始日和结束日案例 / 判断两个变量只有一个为空的情况

本文介绍了在JavaScript中如何利用位运算符`^`和逻辑非`!!`来优雅地判断开始日和结束日的输入情况。在四种可能的用户输入场景中,通过位异或运算符可以简洁地识别出只有一个日期被输入的情况。文中还探讨了运算符的原理及其在其他空值判断中的应用。
摘要由CSDN通过智能技术生成

前言

今天敲代码的时候,遇到一个小问题。前端有两个输入框,一个是开始日,一个是结束日。现在需要判断用户输入的情况,大致上有以下四种:

  1. 都没有输入
  2. 只输入了一个
  3. 都输入了,但是开始日大于结束日
  4. 都输入了,且合法

因为不同情况下的错误信息显示不同,所以要区分判断。我重点把目光放在了第二种。

第二种情况的判断逻辑

最简单的方法也是最直观的方法:

if ((!start && end) || (start && !end))

但是这样并不精简,优雅。
群里有一位老哥提供了更加优美的代码:


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值