JavaScript 中 ??|| 的区别

相同点

用法相同,都是前后是值,中间用符号连接。根据前面的值来判断最终返回前面的值还是后面的值。
值1 ?? 值2
值1 || 值2

不同点

判断方式不同:
使用 ?? 时,只有当值1nullundefined时才返回值2
使用 || 时,值1会转换为布尔值判断,为true返回值1false 返回值2

// ??
undefined ?? 2  // 2
null ?? 2       // 2
0 ?? 2          // 0
"" ?? 2           // ""
true ?? 2       // true
false ?? 2      // false// ||
undefined || 2  // 2
null || 2       // 2
0 || 2          // 2
"" || 2           // 2
true || 2       // true
false || 2      // 2

总的来说,??更加适合在不知道变量是否有值时使用。

JS中 ?? 与 || 的区别相关推荐

  1. js中!和!!的区别及用法

    js中!和!!的区别及用法 js中!的用法是比较灵活的,它除了做逻辑运算常常会用!做类型判断,可以用!与上对象来求得一个布尔值, 1.!可将变量转换成boolean类型,null.undefined和 ...

  2. js 中null,undefined区别

    首先摘自阮一峰先生的文章: 大多数计算机语言,有且仅有一个表示"无"的值,比如,C语言的NULL,Java语言的null,Python语言的None,Ruby语言的nil. 有点奇 ...

  3. js中==和===的区别

    前两天遇到一道面试题,甚为不解,于是学习了下. 题目: <script> var x=5 ; var y='5' ; alert(x == y) ; alert(x !== y) ; al ...

  4. js中==与===的区别

    2019独角兽企业重金招聘Python工程师标准>>> 个人理解:在变量赋值时内存会存储值的类型:做双等号比较操作时,会先做临时类型转换再做比较,内存中存储的值还是原来的不会改变 经 ...

  5. js中===和==的区别

    简单来说:== 代表相同,=== 代表严格相同 这么理解:当进行双等号比较的时候,先检查两个操作数的数据类型,如果相同,则进行 === 比较,如果不同,则愿意为你进行一次类型转换,转换成相同类型后再进 ...

  6. js中的if与Java中的if_JS直接if参数的用法JS中!和!!区别

    经常在JS中见一些代码直接if(参数),然后参数调用的时候是将元素自己传下去.例如下面代码: functiontest1(obj){if(obj){ alert($(obj).val()); }els ...

  7. js和html以及css的区别,html、css、js中的区别与关系

    html.css.js中的区别与关系 2020/04/26 作者: 互盟股份 今天小盟给大家分享的是html.css.js中的区别与关系,相信很多人都不太了解,为了让大家更加了解html.css.js ...

  8. return true Java_[Java教程]js中return,return true,return false的用法及区别

    [Java教程]js中return,return true,return false的用法及区别 0 2015-11-16 23:00:03 1.语法及返回方式 ①返回控制与函数结果 语法为:retu ...

  9. php in循环与for循环,详谈js中标准for循环与foreach(for in)的区别

    js中遍历数组的有两种方式 var array=['a'] //标准的for循环 for(var i=1;i alert(array[i]) } //foreach循环 for(var i in ar ...

最新文章

  1. Ubuntu中清理Network下Connect to Server的入口
  2. JVM:方法区可以GC吗?
  3. 代画PCB及C语言编程
  4. 开发者调试工具Chrome Workspace
  5. RTMP规范简单分析
  6. java工作中mq应用多吗_RabbitMQ消息中间件在工作中的应用场景
  7. 华为云平台使用手册_训练、标注成本节省90%!华为云自动化AI开发平台ModelArts 3.0发布,从训练数据到模型落地一站式打通...
  8. 网关信息认证服务器不可达,网关消息认证服务器不可达
  9. 一列数的规则如下: 1、1、2、3、5、8、13、21、34...... 求第30位数是多少?
  10. 大数据学情分析_大数据时代|如何轻松做好学情分析
  11. 更改stata外部命令存放位置
  12. 软件测试常见Bug清单
  13. 重庆阿尔克分析2020中国经济,为什么实体经济干不过虚拟经济?
  14. 在计算机中添加用户时提示拒绝访问,教你怎么解决打印机拒绝访问问题
  15. ArcGIS许可服务管理器无法启动问题
  16. 让你的Onedrive网盘秒变网站,文件展示,直连下载,视频在线播放
  17. Ceph OSD Down
  18. 都要2023年了,Android开发是否还值得入场?
  19. 2021年11月软考网络规划设计师上午真题及答案解析
  20. 根据布尔表达式绘制电路

热门文章

  1. 《EfficativeSTL》
  2. html元素全屏右键显示覆盖,HTML表单元素覆盖样式元素问题及其补救之道
  3. 肯塔基大学计算机科学,西肯塔基大学计算机专业
  4. 《老男孩》上映 “娱乐宝”投资电影进入回收期
  5. 关于使用讯搜(xunsearch)过程中遇到的坑
  6. 垃圾发电厂过磅系统是怎么运作的
  7. 《红楼梦》人物关系有多复杂?一张图帮你理清楚!
  8. 如何让ecshop做淘宝客
  9. 9660图像 缺少iso_刻录映像时出现的问题
  10. 提取谷歌游览器Cookie的五重境界