在Java和c++中||运算符返回的结果为布尔值,而在JavaScript中,||不一定返回布尔结果,它的运算规则为:返回第一个不为false的那个值(对象亦可),或者是返回最后一个值(如果全部都是false的话)。

而且,在逻辑运算中,0、“”、false、NaN、undefined均表示false。

下面是一段程序,各种情况下||的返回值,代码为:

<html> <head> <script language="javascript"> var a = 0; var b = 5; var c = a||b; window.alert(c); a = false; b = true; c = a||b; window.alert(c); a = 0; b = ""; c = NaN; d = false; e = undefined; f = a||b||c||d||e; window.alert(f); a = false; b = new Object(); c = a||b; window.alert(c + typeof c); </script> </head> <body> </body> </html>运行结果为:

第四个结果返回的是对象,返回结果不一定是布尔值!

转载于:https://www.cnblogs.com/JPAORM/archive/2012/05/06/2510255.html

javascript中的||运算符相关推荐

  1. JavaScript中delete运算符

    JavaScript中delete运算符是 从对象中删除一个属性,或从数组中删除一个元素. 使用方法: delete expressionwww.mlybyby.com expression 参数是一 ...

  2. JavaScript中的运算符和语句

    一.JavaScript的运算符 a.基本的算术运算符(+.-.*./.%) -.*./.%运算符会在必要的时候将操作数转换为数字,无法转换成数字的操作数将会转换成NaN,相应的运算结果也是NaN. ...

  3. JavaScript中加号运算符+ 运算过程理解

    在JavaScript中二元加法运算符"+"可以对两个数字或者字符串进行连接操作. 1+2=>3 "hello"+" "+" ...

  4. JavaScript中的运算符

    js运算符 算 字 赋 比 逻 位 它 算术运算符 + - * / ++ -- 字符串连接 + 赋值运算 = += -= %= 比较运算符 < > >= <= == === ! ...

  5. JavaScript中的运算符和表达式

    2.1常规数据类型与变量 2.1.1现实生活中的数据 比方说淘宝的商品描述: 数据的几个属性:名称.值.类型 数据 名称 值 类型 价格 1399.00 数值类型 累计评论 345 数值类型 是否支持 ...

  6. Javascript中扩展运算符的作用及使用场景

    扩展运算符(-)是ES6新增的一个运算符,下面来介绍一下它的使用场景及作用 1.作为函数的形参 在作为函数的形参时,通过 -数组名 来表示,也称为rest参数,当函数被调用时传入的实参全部会被放入到这 ...

  7. JavaScript中instanceof运算符的用法以及和typeof的区别

    instanceof : 判断一个对象是否为某一数据类型,或一个变量是否为一个对象的实例:返回boolean类型栗子①: var aColors = ["red", "g ...

  8. js基本语法第七讲:JavaScript中的运算符(逻辑、赋值、全等)

    文章目录 1. 基本运算符:加减乘除及自增自减 1.1 加减乘除.取余.取整 1.2 自增和自减 2. 一元运算符 3. 逻辑运算符 4. 赋值运算符 5. 关系运算符 6. 相等运算符 7. 运算符 ...

  9. JavaScript中数组使用总结

    一. 数组的概念 1.1 什么是数组 数组是指的数据的有序列表. 数组中每个值称之为数组的一个元素. 数组中的每个元素都有一个位置,这个位置称之为索引(下标.index).数组的索引是从 0 开始的 ...

最新文章

  1. Office 2010默认输入法设置方法
  2. 国内免费GPU资源哪里找,让我告诉你最新的薅羊毛“秘籍”
  3. Linux学习笔记4-CentOS7中redis3.2.9安装教程
  4. cocos2dx + vs安装使用
  5. .NET6之MiniAPI(十七):缓存
  6. java实现线程的方式_java多线程实现的四种方式
  7. react学习(57)--map赋值
  8. QPS 提升60%,揭秘阿里巴巴轻量级开源 Web 服务器 Tengine 负载均衡算法
  9. 不相干进程之间传递文件描述符
  10. C++的文件读写以及python的文件读写
  11. runTime动态给类添加属性
  12. 【ACM-ICPC 2018 南京赛区网络预赛】Magical Girl Haze【分层图】
  13. linux网络测速qerf,www.cpg.com.ph
  14. 医疗卫生行业涉及的信息数据元属性与值域代码(数据集)
  15. u盘重置后计算机不显示了,u盘在电脑上不显示了如何恢复
  16. 12款绝赞的Windows软件,让你的电脑再好用10倍
  17. HTML|颜色的设置方法
  18. Android音视频点/直播模块开发
  19. BILIBILI 高并发实时弹幕系统那些事(项目开源、架构演变)
  20. 盘古开源:从大数据时代信息安全,洞察数字经济发展趋势

热门文章

  1. Java程序猿笔试面试之String1
  2. [译]36 Days of Web Testing(六)
  3. 一点一点学习Ubuntu
  4. 【安卓笔记】—— 页面导航 Navigation(2)
  5. 【网络安全工程师面试】—SSRF服务端请求伪造漏洞及利用方法
  6. [转]caffe-ssd中 net.forward()返回值
  7. ARIMA时间序列分析
  8. java 绘制动态小球_JavaScript动画实例:动感小球
  9. mtk 帧同步_【小松教你手游开发】【面试必读(编程基础)】网络游戏同步方式(帧同步和状态同步)...
  10. hmac sha256 php,PHP中的HMAC-SHA-256