javascript运算符

目录

运算符

算数运算符

一元运算符

自增和自减

逻辑运算符

赋值运算符

关系运算符

相等运算符

条件运算符

补充

运算符的优先级

Unicode编码



运算符

运算符也叫操作符,通过运算符可以对一个或多个值进行运算,并获取运算结果。

算数运算符

算数运算符
-
*
/
%取模运算(取余数)

1、当对非Number类型的值进行运算时(除过字符串的加法运算),会将这些值转换为Number然后再运算。(任何值做- * / 运算时都会自动转换为Number,利用此特点做隐式的类型转换,通过为一个值- 0 *1  /1来将其转换为Number,实际上它也是调用Number()函数,但是更方便)

           

2、任何值和NaN运算都得NaN。

3、字符串相加为拼接操作。(可以利用此对长字符串换行输入)

                                                                

4、任何值和字符串相加都会先转换成字符串,再进行拼接。

           利用此将一个任意数据类型转换为String

           为任意的数据类型 + 一个空串""即可进行转换

           这是一种隐式的类型转换,由浏览器自动完成,实际上它也是调用String()函数

   

一元运算符

只需要一个操作数的运算符

一元运算符
+正号
负号

对非Number类型的值进行运算时,同样会将这些值转换为Number然后再运算。(任何值做运算时都会自动转换为Number,利用此特点,为一个值使用+,来将其转换Number)

          

自增和自减

自增++

  •  通过自增可以使变量在自身的基础上增加1
  •  一个变量自增以后,原变量的值会立即自增1
  •  自增分为两种,后++(a++)和前++(++a)

            a++的值等于原变量的值(先运算再+1)

            ++a的值等于自增后的值(先+1再运算)

            

自减--

  •  通过自减可以使变量在自身的基础上减少1
  •  一个变量自减以后,原变量的值会立即自减1
  •  自减分为两种,后--(a--)和前--(--a)

            a--的值等于原变量的值(先运算再-1)

            --a的值等于自增后的值(先-1再运算)

逻辑运算符

            对布尔值操作                                     对非布尔值操作
!取反true变false,false变true先将其转化为布尔值,再进行取反操作
&&与遇到false即结束返回false,全为true才会返回true先将其转化为布尔值,再进行运算,并且返回原值,判断在哪结束返回哪个值的原值(结果false返回第一个false的原值,结果为true返回最后一个值的原值。)
||或遇到true就结束并返回true,全为false才会返回false先将其转化为布尔值,再进行运算,并且返回原值,判断在哪结束返回哪个值的原值。

对非Boolean类型的值进行取反运算时,会将数据类型转换为Boolean然后再运算。利用此特性,两次取反,将任意数据类型转换为布尔值。原理同Boolean()函数一样。

           

代替if语句的用法

      &&操作,第一个值为false,不会检查第二个值,为true时才会检查。

         

     ||操作,第一个值为true,不会检查第二个值,为false时才会检查。

         

 对非布尔值进行&&||运算,先转换为布尔值进行运算,结果返回原值。

        

赋值运算符

赋值运算符
=符号右侧的值赋值给符合左侧的变量
+=a = a + 5可以简写成  a += 5
-=a = a - 5可以简写成  a -= 5
*=a = a * 5可以简写成  a *= 5
/=a = a / 5可以简写成  a /= 5
%=a = a % 5可以简写成  a %= 5

关系运算符

关系运算符
>
>=
<
<=

  • 通过关系运算符可以比较两个值之间的大小关系,如果关系成立它会返回true,反之返回false。
  • Number与非Number之间的运算,对于非Number类型的数据,会先转换为Number再进行比较。
  • NaN与任何值做任何比较,都会返回false。
  • 如果符号两侧的值都是字符串,比较的是字符串的unicode编码,逐位进行比较。

                    利用此特性可以对英文进行排序,比较中文没有意义。

                    比较两个字符串型的数字时,一定要转型,否则比较的是Unicode编码。

相等运算符

==相等

相等运算符用来比较两个值是否相等,如果相等返回true,否则返回false。

如果值的类型不同,则会自动进行类型转换,将其转换为相同的类型(一般转Number),然后再比较。

undefined衍生自null,所以这两个值做相等判断时,会返回true。

NaN不和任何值相等,包括他本身。

!=不相等

不相等运算符用来比较两个值是否不相等,如果不相等返回true,否则返回false。

 如果值的类型不同,则也会自动进行类型转换,将其转换为相同的类型,然后再比较。

===全等

和相等类似,不同的是不会转换数据类型,类型不同直接返回false。

undefined和null相等但不全等。

!==不全等和不等类似,不同的是不会转换数据类型,类型不同直接返回true。

 补充: 判断一个值是否为NaN,调用isNaN()函数来判断。如果该值是NaN则返回true。

                 

条件运算符

条件运算符也叫三元运算符

语法:条件表达式?语句1:语句2;

执行流程:

          首先对条件表达式进行求值, 如果求知结果为非Boolean值,会先将其转换为Boolean值。

              如果该值为true,则执行语句1,并返回执行结果。

              如果该值为false,则执行语句2,并返回执行结果。

补充

运算符的优先级

运算符

使用可以分割多个语句,一般可以在声明多个变量时使用

在js中有一个运算符优先级的表

    在表中越靠上优先级越高,越优先计算,如果优先级一样,则从左往右计算。

    可以使用()改变优先级。

Unicode编码

js中在字符串中使用转义字符输入Unicode编码

     \u四位编码

      例子:console.log("\u2620");

html网页中使用Unicode编码,需要的是十进制 

     &#编码;

      例子: <h1>&#9760;</h1>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值