目录
1.算术运算符
- var a = "10", b = 2; console.log(a + b);//"102"
- 加号两侧同时为数字,会进行加法运算
- 加号任何一侧为字符串,表示字符拼接
- console.log(a - b);console.log(a * b);
- 符号两侧同时为数字,表示对应的算术运算
- 符号任何一侧为非数字,会先把该侧进行转换,转换数字成功,进行对应算术运算,转换失败,最终结果NaN(Not a number 非数字)
- 一元运算符
var a = 10;
+a;
a++
二元运算符
a + b
a += 2
三元运算符
条件 ?语句1 : 语句2
条件成立执行语句一,否则执行语句二
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script type="text/javascript">
console.log(1 + 2);
console .log(0.1 + 0.2);
var a = "10",
b = 2;
console.log(a + b);//"102"
//加号两侧同时为数字,会进行加法运算
//加号任何一侧为字符串,表示字符拼接
console.log(3 - 2);
console .log(0.3 - 0.2);
var a = 3,
b="5";
b = true
console.log(a - b);
console.log(a * b);
//符号两侧同时为数字,表示对应的算术运算
//符号任何一侧为非数字,会先把该侧进行转换,转换数字成功,进行对应算术运算,转换失败,最终结果NaN(Not a number 非数字)
var a = 10,
b = 3 ;
console.log(a % 3);
//一元运算符
var a = 10;
+a;
a++
//二元运算符
a + b
a += 2
//三元运算符
//条件 ?语句1 : 语句2
//条件成立执行语句一,否则执行语句二
var num = prompt("请输入一个数字",0);
num % 2 == 0
? console.log(num + "是一个偶数")
: console.log(num + "是一个奇数");
</script>
</head>
<body>
</body>
</html>
- = 赋值运算符是所有运算符中优先级最低的
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script type="text/javascript">
var a = 10;
a = a + 3//10+3 a=13
a += 3;
a = a - 3
a -= 3
a = a * 2
a *= 2
a = a / 2
a /= 2
a = a % 2
a %= 2
a = a + 1
a += 1;
a++
++a
a = a - 1
a -= 1;
a--
--a
console.log("a的值是" + a);
// = 赋值运算符是所有运算符中优先级最低的
console.log(2 + 4 + "=" + 6);//6=6
console.log(4 + "=" + (3 + 1));
</script>
</head>
<body>
</body>
</html>
- b = a++; ++在后 把a原来的值当做整个表达式的值,再自增
- b = ++a; ++在前 先自增,再把a原来的值当做整个表达式的值
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script type="text/javascript">
var a = 10;
console.log(a);//10
console.log(a++);//10 先输出再自增
//a++ 把原来的值10当做整个表达式的值输出 再进行自增 a= a+1 a=11
console.log(a);//11
console .log(++a);//12 先自增再输出
//先进行自增 a= a+1 a=12 再把自增后的值作为表达式进行输出
console.log(a);//12
var a =10,b;
b = a++;//++在后 把a原来的值当做整个表达式的值,再自增
console.log(a);
console.log(b);
var a = 10,b;
b = ++a;//++在前 先自增,再把a原来的值当做整个表达式的值
console.log(a);
console.log(b);
var a = 10;
b = --a;
console.log(a);
console.log(b);
var a = 10;
b = a--;
console.log(a);
console.log(b);
var a = 10,b = 2;
console.log(++a + b);
console.log(a);
var a = 10,b = 2;
console.log(a++ + b + a);
</script>
</head>
<body>
</body>
</html>
2.比较运算符
- 算术运算过程中,会进行类型转换
- 数值比较过程中, 也会进行类型转换
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script type="text/javascript">
console.log(5 > 8);//false
console.log(5 >= 8);//false
console.log(5 < 8);//ture
console.log(5 <= 8);//ture
console.log(5 == 5);//ture
console.log(5 == "5");//ture
console.log(5 === "5");//false
console.log(5 <= 5);//ture
console.log(5 != 5);//false
// +
// -
// 算术运算过程中,会进行类型转换
//数值比较过程中 也会进行类型转换
</script>
</head>
<body>
</body>
</html>
3.逻辑运算符
- 逻辑 与 &&
- 符号两侧同时为真,才为真,其他情况均为假
- 短路
- 逻辑或 ||
- 符号两侧同时为假才为假,其他情况均为真
- 逻辑非 !
- 非真即假,非假即真
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
<script type="text/javascript">
console.log(true && true);//true
console.log(false && true);//false
console.log(true && false);//false
console.log(false && false);//false
// 逻辑 与 &&
// 符号两侧同时为真,才为真,其他情况均为假
// 短路
console.log(true || true);//true
console.log(false || true);//ture
console.log(true || false);//ture
console.log(false || false);//false
// 逻辑或 ||
//符号两侧同时为假才为假,其他情况均为真
// 逻辑非 !
console.log(!true);//false
console.log(!false);//true
//非真即假,非假即真
</script>
</head>
<body>
</body>
</html>