[转] JS运算符 &&和|| 及其优先级

第一、&& (逻辑与)运算,看一个简单的例子:

var a = 1 && 2 && 3;
var b = 0 && 1 && 2;
var c = 1 && 0 && 2;
console.log(a);//值为3
console.log(b);//值为0
console.log(c);//值为0

运行的结果是 :3,0,0。

解析:

“&&” 运算遇到false就返回;

变量a的计算:因为1 && 2,1为真,返回2;2&&3, 2为真,返回3 。

变量b的计算:因为0 && 1,0为假,返回0,不再往下计算。

第二、|| (逻辑或)运算,看一个简单的例子:

var d = 0 || 1 || 2;
var e = 1 || 0 || 2;
var f = 1 || 2 || 0;

console.log(d);//值为1
console.log(e);//值为1
console.log(f);//值为1

解析:

“||”运算遇到true就返回;

变量d的计算:因为0 || 1,0为假,返回1;1 || 2, 1为真,返回1 。

变量e的计算:因为1 || 0,1为真,返回1,不再往下计算。

三、&& (逻辑与) 和||(逻辑或)混合使用:

var g =  1 && 2 || 3;

var h = 1 || 2 && 3;

var i = 0 || 2 && 3;

console.log(g);//值为2
console.log(h);//值为1 

console.log(h);//值为3

解析:

&& (逻辑与) 优先级高于||(逻辑或);

变量g的计算:因为1 && 2,1为真,返回2;2 || 3, 2为真,返回2 。

变量e的计算:等式看成 1 || (一个值),1为真,最终直接返回1,不需要计算后边的等式的值。

变量i的计算:因为2 && 3,2为真,返回3;0 || 3,0为假,返回3。

时间: 2024-11-03 01:26:22

[转] JS运算符 &&和|| 及其优先级的相关文章

JS运算符优先级

  记录  随时查看 JS运算符优先级,布布扣,bubuko.com

JS运算符

JS运算符: 使用的运算符的时候不需要声明变量,运算符非变量:1.算术运算符 + - * / % (%为取余数运算符) (自增运算符++) (自减运算符 --) + 运算符作用:1.数值相加 2.字符串拼接(连接)将数字隐式转换为字符串 - 运算符作用:1.数值相减 2.将字符串隐式转换为数字++自加1:num++ 先赋值再加一: ++num 先加一再赋值: --自减一:同++; 2.赋值运算符 x=y x=y x+=y x=x+y x-=y x=x-y x*=y x=x*y x/=y x=x/

输入 输出 注释 案例 常用数据 转换 常量 运算符的分类 优先级

(一)输入 输出 Console.ReadLine();输入语句 Console.WriteLine(); 输出语句 自动换行 Console.Write();输出语句  不自动换行 (二)注释 //  注释一行 /*  */  注释一段区域 ///    放在函数上面使用,给函数加注解 (三)案例 Console.Write("请输入姓名:"); string name = Console.ReadLine(); Console.Write("请输入年龄:");

web开发设计--js数据类型,js运算符

1. js数据类型分为:数值型,布尔型,字符串 通过typeof可以看具体的数据类型是什么. 举例: <span style="font-family:Microsoft YaHei;font-size:18px;"><html> <head> </head> <body> <script language="javascript"> //js中变量的定义(在js中,变量用var表示,不管实际类

js运算符单竖杠“|”的用法和作用及js数据处理

很多朋友都对双竖杠"||",了如指掌,因为这个经常用到.但是大家知道单竖杠吗? 看JavaScript实用技巧,js小知识文章时,看到了单竖杠"|"运算,对它很陌生. 学习并掌握它. js运算符单竖杠"|"的作用 在js操作,Number | 0 的时候: a. 整数操作的时候,相当于去除小数点,parseInt. b. 正数的时候,相当于向下取整,Math.floor(). c. 负数的时候,相当于向上取整,Math.ceil(). Math.

位运算符和运算符优先级

# ###(7)位运算符: & | ~ ^ << >> var1 = 19 var2 = 15 # & 按位与 res = var1 & var2 print(res) ''' 10011 01111 00011 ''' # | 按位或 res = var1 | var2 print(res) ''' 10011 01111 11111 ''' # << 左移 """ n<<m n乘以2的m次幂 &quo

js运算符的优先级

自上向下优先级降低 运算符 描述 . [] () 字段访问.数组下标.函数调用以及表达式分组 ++ -- - ~ ! delete new typeof void 一元运算符.返回数据类型.对象创建.未定义值 * / % 乘法.除法.取模 + - + 加法.减法.字符串连接 << >> >>> 移位 < <= > >= instanceof 小于.小于等于.大于.大于等于.instanceof == != === !== 等于.不等于.严格

JS运算符及部分数据类型转换

运算符 %(小数不能用,正数%负数=正数.负数%正数=负数) ==(等于,判断值是否一样) ===(判断值和数据类型是否一样) !(取反) !=(不等于) "qa">"a"(字符串之间比较大小根据他们的ASCII码来比较大小) 判断语句?表达式1:表达式2(判断语句为真时执行表达式1,为假时执行表达式2) ||(或,2||1=2,从左往右,遇true则先输出true的值) &&(且,) 7.运算符优先级 逻辑非 算术 逻辑与.逻辑或 条件操作符

《JavaScript高级程序设计》学习笔记(2)--JS运算符详解

欢迎关注本人的微信公众号"前端小填填",专注前端技术的基础和项目开发的学习. 思维导图 前面对JS的运算符的操作很多细节的东西没有提及,今天给大家分享一张网上找的思维导图,对这一部分做一个详细的补充,小编觉得总结得还算很到位的: