JS运算符

来自CloudWiki
跳转至: 导航搜索

运算符

以下内容都可以在浏览器上直接验证

方法:在火狐或谷歌浏览器上,按F12进入调试模式,在控制台直接输入命令即可。

Wx3-8.png

算术运算符

+:加法

var a = 1;
var b = 2;
a + b //3

-:减法

var a = 2;
var b = 1;
a - b //1

*:乘法

var a = 2;
var b = 1;
a * b //2

**:幂运算

var a = 2;
a ** 2 //2*2=4
a *** 3 //2*2*2=8

/:除法

var a = 4;
var b = 2;
a / b //2

%:取余数

var a = 5;
var b = 2;
a % b //1

++:自增

var a=1;
a++// 2

–:自减

var a=1;
a-- //0

注意:自增自减时的顺序,a++与++a的区别

赋值运算符

赋值运算符用于给 JavaScript 变量赋值。

   var a = 10;
   var b = 5;
   a = b//a=5,b=5
   a += b //a=a+b,a=15,b=5
   a -= b //a=a-b,a=5,b=5
   a *= b //a=a*b,a=50,b=5
   a /= b //a=a/b,a=2,b=5
   a %= b //a=a%b,a=0,b=5

用于字符串的 + 运算符

运算符”+”用于把文本值或字符串变量中,表示将两边拼接起来(连接起来)。

var a='hello'
var b='Tom'
a + b //'hellowTom'

对字符串和数字进行加法运算

两个数字相加,返回数字相加的和,如果数字与字符串相加,返回字符串。

var a=5
var b='5'
a + b // '55'

比较运算符

比较运算符在逻辑语句中使用,以测定变量或值是否相等。

  • ==:等于
  • ===:绝对等于(值和类型都相同)
  •  !=:不等于
  •  !==:不绝对等于(值和类型有一个不相等,或两个都不相等)
  • >:大于
  • <:小于
  • >=:大于等于
  • <=:小于等于
var a = 5;
a == 5 //true
a == 8 //false
a === '5' //false
a === 5 // true
a != 1 // true
a > 8 //false
a < 8 //true
a >= 5 //true
a <=2 //false

逻辑运算符

&&:and(与)

同时为真才是true,只要有任何一个为假,则为false

var a = 1;
var b = 2;
(x<5 && b>1) // true

||:or(或)

有一个为真则是true,都为假,才是false

var a = 1;
var b = 2;
(x==5 || y==5)//false

!:not(非)

取反

var a = 1;
var b = 2;
(b > a) // true
!(b > a) // false

注意:undefined、 null、 false、 0、 NaN在进行逻辑运算时都是false

优先级

算术 > 比较 > 逻辑

例:2 > 1+3 || 6-4<3 && 3>2,得到的结果是什么?

首先比较2 > 1+3 、 6-4<3、3>2,得到结果为false、true 、 true

在进行false || true && true

得到最后结果为true

注意:&&符号的优先级要高于||符号

2 > 1+3 || 6-4<3 && 3<2的结果为false

数据类型转换

Number:将数据转换成数字类型

Number(123);
123  //数字类型
Number('123');
123  //数字类型
Number('as');
NaN  //不能将as转换成数字
Number(true);
1
Number(false);
0
Number(undefined);
NaN
Number(null);
0
parseInt('324abc')
324  //可以过滤,只输出数字
Number({2:1});
NaN //不能转对象

String:将数据转换成字符串

String(true);
'true' 
String(false);
'false'
String(123);
'123'
String([1,2,3]);
'1,2,3'
String({1:2,3:'asd'});
'[object object]'
console.log(typeof(y))

Boolean:布尔类型的转换

Boolean(undefined);
false
Boolean(null);
false
Boolean(0);
false
Boolean(0.1);
true
Boolean(-0.0001);
true
Boolean('');
false //空字符串
Boolean('a');
true
Boolean([]);
true
Boolean({});
true  //数组和对象是空的,但是也为true