JavaScript operators 运算符

发布于 2023-02-25 21:01:28 字数 5155 浏览 76 评论 0

算术运算符

+

加法运算,可用于数值和字符串的运算。

var sum=1+2; // sum=3
var string="abc"+"123"; // string="abc123"

加法符合以下规则:

  • 两个数值相加,结果为二者之和
  • 运算数包含字符串时,非字符串转换为字符串,两个字符串再连接到一起

-

减法运算,可用于数值的运算。

var difference=3-1; // difference =2

*

乘法运算,可用于数值的运算。

var product=3*5; // product=15

/

除法运算,可用于数值的运算。

var quotient=6/2; // quotient=3

%

取余运算,可用于数值的运算。

var remainder=5/2; // remainder=1

++

增量运算,用于使数值加 1。有多种使用方式:

var a=1,
	b=2,
	c=3,
	d=4;
a++; // a=2
++b; // b=3
var x=c++; // x=3,c=4
var y=++d; // y=5,d=5

左增量运算的返回值和结果相同,右增量运算的返回值比结果小 1。

--

减量运算,用于使数值减 1。使用方式类似于增量运算:

var a=1,
	b=2,
	c=3,
	d=4;
a--; // a=0
--b; // b=1
var x=c--; // x=3,c=2
var y=--d; // y=3,d=3

左减量运算的返回值和结果相同,右减量运算的返回值比结果大 1。

位运算符

位运算将整数值转换为 32 位二进制数进行运算,运算方式类似于逻辑运算(1=true,0=false)。

~

按位非运算,将数值所有位的值进行非运算:

var a=~5; // a=-6

结果相当于: ~x=-x-1;

&

按位与运算,将两个数值对应位的值进行且运算:

var a=3&5; // a=1

|

按位或运算,将两个数值对应位的值进行或运算:

var a=3|5; // a=7

^

按位异或运算,两个数值对应位的值相同时,结果对应位为 0;否则,结果对应位为 1:

var a=3^5; // a=6

<<

位左移运算,将数值所有位左移 n 的位,空出的位用 0 填充:

var a=5<<3; // a=40

>>

保留符号位右移运算,将数值保留符号位,其他所有位右移 n 的位,空出的位用符号位的值填充:

var a=-128>>3; // a=-16

>>>

不保留符号位右移运算,将数值所有位右移 n 的位,空出的位用 0 填充:

var a=-128>>>3; // a=536870896

赋值运算符

=

赋值运算,将 = 号右侧表达式的值赋值给左侧的变量:

var a=2+3; // a=5

+=

加法赋值运算,将 = 左侧变量的值加上右侧表达式的值,并赋值给左侧的变量:

var a=3;
a+=5; // a=8
// 相当于 a=a+5;

-=

减法赋值运算,将 = 左侧变量的值减掉右侧表达式的值,并赋值给左侧的变量:

var a=3;
a-=2; // a=1
// 相当于 a=a-2;

*=

乘法赋值运算,将 = 左侧变量的值乘以右侧表达式的值,并赋值给左侧的变量:

var a=3;
a*=2; // a=6
// 相当于 a=a*2;

/=

除法赋值运算,将 = 左侧变量的值除以右侧表达式的值,并赋值给左侧的变量:

var a=3;
a/=2; // a=1
// 相当于 a=a/2;

%=

取余赋值运算,将 = 左侧变量的值除以右侧表达式的值取余,并赋值给左侧的变量:

var a=3;
a%=2; // a=1
// 相当于 a=a%2;

<<=

位左移赋值运算,将 = 左侧变量的值位左移后,赋值给左侧的变量:

var a=5;
a<<=3; // a=40
// 相当于 a=a<<3;

>>=

保留符号位右移赋值运算,将 = 左侧变量的值位保留符号右移后,赋值给左侧的变量:

var a=-128;
a>>=3; // a=-16
// 相当于 a=a>>3;

>>>=

不保留符号位右移赋值运算,将 = 左侧变量的值位不保留符号右移后,赋值给左侧的变量:

var a=-128;
a>>>=3; // a=536870896
// 相当于 a=a>>>3;

逻辑运算符

!

非运算,对调 bool 值。

var bool=!true; // bool=false

&&

且运算,两个 bool 值均为 true 时,返回 true;如果包含 false,则返回 false。

var bool=true && false; // bool=false

||

或运算,两个 bool 值均为 false 时,返回 false;如果包含 true,则返回 true。

关系运算符

关系运算符可用于对值或表达式的判断,最终返回 bool 类型的值。

比较运算符可用于数值或字符串之间的比较:

  • 两个值均为数值时,以数值比较大小
  • 两个值均为字符串时,依次比较对应位置的字母
  • 一个值为数值,另一个值为字符串时,将字符串转换为数值进行比较

<

小于判断,如果左侧的值小于右侧的值,返回 true;否则,返回 false。

var bool=1<2; // true

>

大于判断,如果左侧的值大于右侧的值,返回 true;否则,返回 false。

var bool=3>1; // true

<=

小于或等于判断,如果左侧的值小于或等于右侧的值,返回 true;否则,返回 false。

var bool=2<=2; // true

>=

大于或等于判断,如果左侧的值大于或等于右侧的值,返回 true;否则,返回 false。

var bool=2<=2; // true

==

相等判断,如果两个值的大小相等,则返回 true。

var bool="2"==2; // true

!=

不相等判断,如果两个值的大小不相等,则返回 true。

var bool=2!=3; // true

===

全等判断,如果两个值的大小和类型均相等,则返回 true。

var bool="2"===2; // false

!==

不全等判断,如果两个值的大小和类型不都相等,则返回 true。

var bool="2"!==2; // true

条件运算符

? :

条件运算,如果判断部分的值为 true,则返回第一个值;否则,返回第二个值。

var a=(1<2) ? 1 : 2; // 返回较小的值

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

绮烟

暂无简介

文章
评论
29 人气
更多

推荐作者

櫻之舞

文章 0 评论 0

弥枳

文章 0 评论 0

m2429

文章 0 评论 0

野却迷人

文章 0 评论 0

我怀念的。

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文