JavaScript的位运算符、赋值运算符、其他运算符、三元运算符、运算符优先级

一、 位运算符
  在一般的应用中,我们基本上用不到位运算符。虽然,它比较基于底层,性能和速度会非常好,而就是因为比较底层,使用的难度也很大,底层运算是转换成二进制进行运算的。

  位运算符有七种,分别是:位非 NOT(~)、位与 AND(&)、位或 OR(|)、位异或 XOR(^)、左移(<<)、有符号右移(>>)、无符号右移(>>>)。

var box = ~25; //-26
var box = 25 & 3; //1
var box = 25 | 3; //27
var box = 25 << 3; //200
var box = 25 >> 2; //6
var box = 25 >>> 2; //6

二、赋值运算符
  赋值运算符用等于号(=)表示,就是把右边的值赋给左边的变量。

var box = 100; //把 100 赋值给 box 变量

  复合赋值运算符通过 x=的形式表示,x 表示算术运算符及位运算符。

var box = 100;
box = box +100; //200,自己本身再加 100

  这种情况可以改写为:

var box = 100;
box += 100; //200,+=代替 box+100

  除了这种+=加/赋运算符,还有其他的几种如下:
    1.乘/赋(*=)
    2.除/赋(/=)
    3.模/赋(%=)
    4.加/赋(+=)
    5.减/赋(-=)
    6.左移/赋(<<=)
    7.有符号右移/赋(>>=)
    8.无符号有移/赋(>>>=)

三、其他运算符
  1.字符串运算符:只有一个,即:"+"。它的作用是将两个字符串相加。规则:至少一个操作数是字符串即可。

var box = ‘100‘ + ‘100‘; //100100
var box = ‘100‘ + 100; //100100
var box = 100 + 100; //200

  2.逗号运算符:可以在一条语句中执行多个操作。

var box = 100, age = 20, height = 178;     //多个变量声明
var box = (1,2,3,4,5);             //5,变量声明,将最后一个值赋给变量,不常用
var box = [1,2,3,4,5];             //[1,2,3,4,5],数组的字面量声明
var box = {                 //[object Object],对象的字面量声明
       1 : 2,
       3 : 4,
       5 : 6
     };

四、三元运算符:

  其实就是 if 语句的简写形式。

var box = 5 > 4 ? ‘对‘ : ‘错‘;        //对,5>4 返回 true 则把‘对‘赋值给 box,反之。

相当于:

var box = ‘‘;       //初始化变量
if (5 > 4) {       //判断表达式返回值
  box = ‘对‘;     //赋值
} else {
  box = ‘错‘;     //赋值
}

四、运算符优先级
  在一般的运算中,我们不必考虑到运算符的优先级,因为我们可以通过圆括号来解决这种问题。比如:

 var box = 5 - 4 * 8; //-27
  var box = (5 - 4) * 8; //8

  但如果没有使用圆括号强制优先级,我们必须遵循以下顺序:

时间: 2024-12-04 20:09:30

JavaScript的位运算符、赋值运算符、其他运算符、三元运算符、运算符优先级的相关文章

“全栈2019”Java第十九章:关系运算符、条件运算符和三元运算符

难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第十九章:关系运算符.条件运算符和三元运算符 下一章 "全栈2019"Java第二十章:按位与.按位或.异或.反码.位运算 学习小组 加入同步学习小组,共同交流与进步. 方式一:关注头条号Gorhaf,私信"Java学习小组". 方式二:关注公众号Gorhaf,回复&qu

JavaScript 32位整型无符号操作

在 JavaScript 中,所有整数字变量默认都是有符号整数,这意味着什么呢? 有符号整数使用 31 位表示整数的数值,用第 32 位表示整数的符号,0 表示正数,1 表示负数. 数值范围从 -2^31 - 2^31-1 即 -2147483648 到 2147483647. JavaScript 进行位操作时,是采用32位 有符号 整型,这意味着其转换的结果也是32位有符号整型. 有些时候,我们进行移位会出现意想不到的结果,以下是C语言 与 JS 的对比. C语言 1 unsigned in

VB.NET中的除法运算符 与 C#中的除法运算符

VB.NET中的除法运算符有两个:/(浮点除法).\(整数除法) C#中的除法运算符只有一个:/(除法) VB.NET中的除法运算符与C#中的除法运算符存在很大的差异,使用时注意区分. 关于VB.NET中的除法运算符的介绍(摘自MSDN): /(浮点除法):将两个数相除并返回以浮点数表示的结果. 所得结果的数据类型取决于操作数的类型. 下表显示如何确定结果的数据类型. 操作数数据类型 结果数据类型 两个表达式都是整数数据类型(SByte.Byte.Short.UShort.Integer.UIn

JavaScript关系运算符 赋值运算符

关系运算符(比较运算符): < 小于 > 大于 <= 小于等于 >= 大于等于 == 等于 === 全等于 != 不等于 !== 不全等于 它们运算的结果都是布尔值. ==比较两个数的值是否相等. ===不但比较值是否相等,还比较类型是否相等. != 比较两个数的值是否不相等. !== 不但比较值是否不相等,还比较类型是否不相等. 赋值运算: = 等于 += 加等于 -= 减等于 *= 乘等于 /= 除等于 %= 余等于 用法: var x = 1; x += 1; //等同于x

python 之 前端开发( JavaScript变量、数据类型、内置对象、运算符、流程控制、函数)

11.4 JavaScript 11.41 变量 1.声明变量的语法 // 1. 先声明后定义 var name; // 声明变量时无需指定类型,变量name可以接受任意类型 name= "egon"; ? // 2. 声明立刻定义 var age = 18; 2.变量名命名规范 1.由字母.数字.下划线.$ 组成,但是不能数字开头,也不能纯数字2.严格区分大小写3.不能包含关键字和保留字(以后升级版本要用的关键字).如: abstract.boolean.byte.char.clas

C语言基础学习运算符-赋值运算符

简单赋值 在C语言里,运算符=并不表示相等,而是一个赋值运算符.这意味着,符号=的左边该是一个可修改的变量名,而右边是赋给该变量的值. 如下程序语句: i = i+1; 在数学上,该等式无法成立.而作为C语言的赋值语句,它意味着找到赋值符号=右边变量i的值,加1后再赋给左边名字为i的变量.赋值运算符=的右边若有变量名,那这个变量名最好是已经被初始化过的. 不同的编译器对没初始化变量的值有着不同的设定,有的为0,有的为随机数,还有的会直接报错. 复合赋值 算术运算符+,-,*,%,/和赋值运算符=

四.运算符(3)三元运算

三元运算 学习目标:理解三元运算表达式(condtion?expr1:expr2 ) <?PHP //给2个数,找到最大的那个数 $a=12; $b=20; $c=null; if($a>=$b){ echo $c=$a; } else{ echo $c=$b;                //打印出20.代码分析:这表达式,if()中判断为真走第一步,为假则走eles } var_dump($c); $c=($a>=$b?$a:$b);            //三元运算符 以‘?’

python条件(三元)运算符

条件运算符  是 三元运算符 语法: 语句1  if   条件表达式  else  语句2 执行流程: 条件运算符在执行时,会先对条件表达式进行求值判断         如果判断结果为True,则执行语句1,并返回执行结果         如果判断结果为False,则执行语句2,并返回执行结果 原文地址:https://www.cnblogs.com/FlyingLiao/p/11111871.html

JavaScript基础之算术运算符 、 前后增量/前后减量运算符 、比较运算符、逻辑运算符、 程序流程控制

1.算术运算符 加.减.乘.除.求余,其中%是求余运算  +  运算符 a.如果加号两边都是字符串,那么加号的作用是连接. b.如果加号的两边都是数值,那么加号的作用是相加. c.如果加号一边是字符串,那么加号的作用是连接. var num1 = 123 var string1 = "123" console.log(num1 + string1) //这是的+运算符是链接作用,结果为123123 console.log(num1 + num1) //两边都是数值,+运算符是相加的作用