js 表达式与运算符 详解(上)

表达式:

 表达式是用于JavaScript脚本运行时进行计算的式子,可以包含常量、变量、运算符

<script>
   var r = 2
   var pi = 3.14
   var circle = pi*r*r
   alert("这个圆的面积= "+circle)   //=>这个圆的面积=12.56
</script>

算术运算符:

+ 、- 、* 、/  、%

+号用来连接两个字符串

只要+连接的操作数中有一个是字符串型,js就会自动提成非字符串型数据作为字符串型数据来处理

js代码的执行顺序是从左到右的,所以在+连接的表达式中,遇到字符串型数据之前,所有出现的数值型数据(或者可以自动转换为数值型的数据仍被作为数值来处理)为了避免这种情况,我们可以在表达式前拼一个空字符串

 1 <script>
 2    var a = 3,b = 4 ;
 3     alert(a+b)             //=>7
 4     alert(a-b)                //=>-1
 5     alert(a*b)                //=>12
 6     alert(a/b)                //=>0.75
 7     alert(a%b)                   //=>3
 8     alert(a+"2")               //=>32
 9     alert(a+b+"3king")            //=>73king
10     alert(""+a+b+"3king")            //=>343king
11 
12 </script>

++ 、-- 分为前缀开式和后缀形式

前缀开式先加减1在执行

后缀形式先执行再加减1

所有能转换为number类型的其它类型能都自加和自减

数值型能支持自增自减远算符

布尔值能支持自增自减运算符

null支持自增自减运算符

字符串型不能支持自增自减运算符

undefined不能支持自增自减运算符

1 <script>
2                var a = 1
3                alert(a++)  //=>1
4                alert(a)      //=>2   a++表示先执行再自增
5                var b =1
6                alert(++b)    //=>2
7                alert(b)       //=>2    ++b表示先自增再执行
8               //所有能强制转换为number的类型都能自减和自加
9 </script>

字符连接符:

通过+连接字符串

1 <script>
2        document.write("欢迎来到"+"ziksang博客园")  //=>欢迎来到ziksang博客园
3        document.write(1+"2")       //=>12
4 </script>

赋值运算符:

= 、+= 、-= 、*= 、/= 、%=、

 1 <script>
 2      var a = 1,b =2;
 3      b =a
 4      alert(b)   //=> 1 a的值赋值给了b 覆盖了原本的值
 5      b +=a //=>3  其解析的意思是  b=b+a   1+2=3
 6      //同理
 7      b -=a 
 8      b *=a
 9      b /=a
10      b %=a   //具体值大家可以去测试一下 用alert(b)来弹出各个不同的方式
11 </script>
原文地址:https://www.cnblogs.com/Ziksang/p/5185772.html