ECMAScript 赋值运算符
赋值 =
JavaScript中=代表赋值,两个等号==表示判断是否相等
例如,x=1表示给x赋值为1
if (x==1){...}程序表示当x与1相等时
if(x==“on”){…}程序表示当x与“on”相等时
配合其他运算符形成的简化表达式
例如i+=1相当于i=i+1,x&=y相当于x=x&y
实例:
2 == “2” 2 === “2” 4 != “4” 4 !== “4” var a = 2; var b = 4; var c = a<b | --b>--a; var c = a<b || --b>--a; var c = a<b &&--b>--a; var c = a<b & --b>--a;
ECMAScript等性运算符
执行类型转换的规则如下:
如果一个运算数是 Boolean 值,在检查相等性之前,把它转换成数字值。false 转换成 0,true 为 1。
如果一个运算数是字符串,另一个是数字,在检查相等性之前,要尝试把字符串转换成数字。
如果一个运算数是对象,另一个是字符串,在检查相等性之前,要尝试把对象转换成字符串。
如果一个运算数是对象,另一个是数字,在检查相等性之前,要尝试把对象转换成数字。
在比较时,该运算符还遵守下列规则:
值 null 和 undefined 相等。
在检查相等性时,不能把 null 和 undefined 转换成其他值。
如果某个运算数是 NaN,等号将返回 false,非等号将返回 true。
如果两个运算数都是对象,那么比较的是它们的引用值。如果两个运算数指向同一对象,那么等号返回 true,否则两个运算数不等。

ECMAScript 关系运算符(重要)
var bResult = "Blue" < "alpha"; alert(bResult); //输出 true
在上面的例子中,字符串 "Blue" 小于 "alpha",因为字母 B 的字符代码是 66,字母 a 的字符代码是 97。
比较数字和字符串
另一种棘手的状况发生在比较两个字符串形式的数字时,比如:
var bResult = "25" < "3"; alert(bResult); //输出 "true"
上面这段代码比较的是字符串 "25" 和 "3"。两个运算数都是字符串,所以比较的是它们的字符代码("2" 的字符代码是 50,"3" 的字符代码是 51)。
不过,如果把某个运算数该为数字,那么结果就有趣了:
var bResult = "25" < 3; alert(bResult); //输出 "false"
这里,字符串 "25" 将被转换成数字 25,然后与数字 3 进行比较,结果不出所料。
总结:
比较运算符两侧如果一个是数字类型,一个是其他类型,会将其类型转换成数字类型. 比较运算符两侧如果都是字符串类型,比较的是最高位的asc码,如果最高位相等,继续取第二位比较.
Boolean运算符(重要)
var temp=new Object();// false;[];0; null; undefined;object(new Object();)
if(temp){
console.log("yuan")
}else {
console.log("alex")
}
全等号和非全等号
等号和非等号的同类运算符是全等号和非全等号。这两个运算符所做的与等号和非等号相同,只是它们在检查相等性前,不执行类型转换。
修改js_operation.html文件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
// var a=1;
// var b = a++; //a+=1,a=a+1,先赋值再计算,b=1,a=2;
// var b = ++a; //先计算再赋值,a=2,b=2;
// alert(b);
// alert(a);
// var x = 1;
// alert(x++); // 1
// alert(++x); // 3
// alert(--x); // 2
// alert(x--); // 2
// alert(x) // 1
// 一元加减法
// var a = 3;
// var a = "3";
// var a = "3.2"
// var a = "123a456"
// var a = "123a"
// var a = "a123"
// b = +a;
// b = -a;
// alert(b)
// alert(typeof(b))
// &&逻辑与
// 1 && 0 ----> 0
// 0 && 1 ----> 0
// 0 && 0 ----> 0
// 1 && 1 ----> 1
// ||逻辑或
// 1 || 0 ----> 1
// 0 || 1 ----> 1
// 0 || 0 ----> 0
// 1 || 1 ----> 1
// !非
// var a = 1;
// if (a < 10 && a > 0){
// ++a;
// alert(a)
// }
// if (null && true){
// aler(1);
// }
// if (new Object){
// alert(1);
// }
// if (true && new Object){
// alert("hello")
// }
// 3<<2
// 00001100 = 12
// 00001100>>1 = 00000110 = 6
// alert(3<<2);
// alert(12>>1);
// 1 & 2
// 0000 0001
// 0000 0010
// 0000 0000
// 1 | 2
// 0000 0011
// ^1
// 0000 0001
// 1111 1110
// 异或
// 0000 0001
// 0000 0010
// 0000 0011
// 同或
// 0000 0001
// 0000 0010
// 1111 1100
// if (true & true){
// alert("hello")
// }
// if (1 & 2){
// alert("hello")
// }
alter(2==2);
</script>
</body>
</html>
点击pycharm上面浏览器

修改js_operation.html文件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
// var a=1;
// var b = a++; //a+=1,a=a+1,先赋值再计算,b=1,a=2;
// var b = ++a; //先计算再赋值,a=2,b=2;
// alert(b);
// alert(a);
// var x = 1;
// alert(x++); // 1
// alert(++x); // 3
// alert(--x); // 2
// alert(x--); // 2
// alert(x) // 1
// 一元加减法
// var a = 3;
// var a = "3";
// var a = "3.2"
// var a = "123a456"
// var a = "123a"
// var a = "a123"
// b = +a;
// b = -a;
// alert(b)
// alert(typeof(b))
// &&逻辑与
// 1 && 0 ----> 0
// 0 && 1 ----> 0
// 0 && 0 ----> 0
// 1 && 1 ----> 1
// ||逻辑或
// 1 || 0 ----> 1
// 0 || 1 ----> 1
// 0 || 0 ----> 0
// 1 || 1 ----> 1
// !非
// var a = 1;
// if (a < 10 && a > 0){
// ++a;
// alert(a)
// }
// if (null && true){
// aler(1);
// }
// if (new Object){
// alert(1);
// }
// if (true && new Object){
// alert("hello")
// }
// 3<<2
// 00001100 = 12
// 00001100>>1 = 00000110 = 6
// alert(3<<2);
// alert(12>>1);
// 1 & 2
// 0000 0001
// 0000 0010
// 0000 0000
// 1 | 2
// 0000 0011
// ^1
// 0000 0001
// 1111 1110
// 异或
// 0000 0001
// 0000 0010
// 0000 0011
// 同或
// 0000 0001
// 0000 0010
// 1111 1100
// if (true & true){
// alert("hello")
// }
// if (1 & 2){
// alert("hello")
// }
alert(2==2);
alert(2=="2");
</script>
</body>
</html>
点击pycharm上面浏览器

继续点击确认

修改js_operation.html文件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
// var a=1;
// var b = a++; //a+=1,a=a+1,先赋值再计算,b=1,a=2;
// var b = ++a; //先计算再赋值,a=2,b=2;
// alert(b);
// alert(a);
// var x = 1;
// alert(x++); // 1
// alert(++x); // 3
// alert(--x); // 2
// alert(x--); // 2
// alert(x) // 1
// 一元加减法
// var a = 3;
// var a = "3";
// var a = "3.2"
// var a = "123a456"
// var a = "123a"
// var a = "a123"
// b = +a;
// b = -a;
// alert(b)
// alert(typeof(b))
// &&逻辑与
// 1 && 0 ----> 0
// 0 && 1 ----> 0
// 0 && 0 ----> 0
// 1 && 1 ----> 1
// ||逻辑或
// 1 || 0 ----> 1
// 0 || 1 ----> 1
// 0 || 0 ----> 0
// 1 || 1 ----> 1
// !非
// var a = 1;
// if (a < 10 && a > 0){
// ++a;
// alert(a)
// }
// if (null && true){
// aler(1);
// }
// if (new Object){
// alert(1);
// }
// if (true && new Object){
// alert("hello")
// }
// 3<<2
// 00001100 = 12
// 00001100>>1 = 00000110 = 6
// alert(3<<2);
// alert(12>>1);
// 1 & 2
// 0000 0001
// 0000 0010
// 0000 0000
// 1 | 2
// 0000 0011
// ^1
// 0000 0001
// 1111 1110
// 异或
// 0000 0001
// 0000 0010
// 0000 0011
// 同或
// 0000 0001
// 0000 0010
// 1111 1100
// if (true & true){
// alert("hello")
// }
// if (1 & 2){
// alert("hello")
// }
alert(2==2);
alert(2=="2");
alert(2==="2");
</script>
</body>
</html>
点击pycharm上面浏览器

继续点击确认

继续点击确认

修改js_operation.html文件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
// var a=1;
// var b = a++; //a+=1,a=a+1,先赋值再计算,b=1,a=2;
// var b = ++a; //先计算再赋值,a=2,b=2;
// alert(b);
// alert(a);
// var x = 1;
// alert(x++); // 1
// alert(++x); // 3
// alert(--x); // 2
// alert(x--); // 2
// alert(x) // 1
// 一元加减法
// var a = 3;
// var a = "3";
// var a = "3.2"
// var a = "123a456"
// var a = "123a"
// var a = "a123"
// b = +a;
// b = -a;
// alert(b)
// alert(typeof(b))
// &&逻辑与
// 1 && 0 ----> 0
// 0 && 1 ----> 0
// 0 && 0 ----> 0
// 1 && 1 ----> 1
// ||逻辑或
// 1 || 0 ----> 1
// 0 || 1 ----> 1
// 0 || 0 ----> 0
// 1 || 1 ----> 1
// !非
// var a = 1;
// if (a < 10 && a > 0){
// ++a;
// alert(a)
// }
// if (null && true){
// aler(1);
// }
// if (new Object){
// alert(1);
// }
// if (true && new Object){
// alert("hello")
// }
// 3<<2
// 00001100 = 12
// 00001100>>1 = 00000110 = 6
// alert(3<<2);
// alert(12>>1);
// 1 & 2
// 0000 0001
// 0000 0010
// 0000 0000
// 1 | 2
// 0000 0011
// ^1
// 0000 0001
// 1111 1110
// 异或
// 0000 0001
// 0000 0010
// 0000 0011
// 同或
// 0000 0001
// 0000 0010
// 1111 1100
// if (true & true){
// alert("hello")
// }
// if (1 & 2){
// alert("hello")
// }
// alert(2==2);
// alert(2=="2");
// alert(2==="2");
alert(25<3);
// alert("25"<"3");
</script>
</body>
</html>
点击pycharm上面浏览器

修改js_operation.html文件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
// var a=1;
// var b = a++; //a+=1,a=a+1,先赋值再计算,b=1,a=2;
// var b = ++a; //先计算再赋值,a=2,b=2;
// alert(b);
// alert(a);
// var x = 1;
// alert(x++); // 1
// alert(++x); // 3
// alert(--x); // 2
// alert(x--); // 2
// alert(x) // 1
// 一元加减法
// var a = 3;
// var a = "3";
// var a = "3.2"
// var a = "123a456"
// var a = "123a"
// var a = "a123"
// b = +a;
// b = -a;
// alert(b)
// alert(typeof(b))
// &&逻辑与
// 1 && 0 ----> 0
// 0 && 1 ----> 0
// 0 && 0 ----> 0
// 1 && 1 ----> 1
// ||逻辑或
// 1 || 0 ----> 1
// 0 || 1 ----> 1
// 0 || 0 ----> 0
// 1 || 1 ----> 1
// !非
// var a = 1;
// if (a < 10 && a > 0){
// ++a;
// alert(a)
// }
// if (null && true){
// aler(1);
// }
// if (new Object){
// alert(1);
// }
// if (true && new Object){
// alert("hello")
// }
// 3<<2
// 00001100 = 12
// 00001100>>1 = 00000110 = 6
// alert(3<<2);
// alert(12>>1);
// 1 & 2
// 0000 0001
// 0000 0010
// 0000 0000
// 1 | 2
// 0000 0011
// ^1
// 0000 0001
// 1111 1110
// 异或
// 0000 0001
// 0000 0010
// 0000 0011
// 同或
// 0000 0001
// 0000 0010
// 1111 1100
// if (true & true){
// alert("hello")
// }
// if (1 & 2){
// alert("hello")
// }
// alert(2==2);
// alert(2=="2");
// alert(2==="2");
alert(25<3);
alert("2566545"<"3");
</script>
</body>
</html>
点击pycharm上面浏览器

继续点击确认

修改js_operation.html文件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
// var a=1;
// var b = a++; //a+=1,a=a+1,先赋值再计算,b=1,a=2;
// var b = ++a; //先计算再赋值,a=2,b=2;
// alert(b);
// alert(a);
// var x = 1;
// alert(x++); // 1
// alert(++x); // 3
// alert(--x); // 2
// alert(x--); // 2
// alert(x) // 1
// 一元加减法
// var a = 3;
// var a = "3";
// var a = "3.2"
// var a = "123a456"
// var a = "123a"
// var a = "a123"
// b = +a;
// b = -a;
// alert(b)
// alert(typeof(b))
// &&逻辑与
// 1 && 0 ----> 0
// 0 && 1 ----> 0
// 0 && 0 ----> 0
// 1 && 1 ----> 1
// ||逻辑或
// 1 || 0 ----> 1
// 0 || 1 ----> 1
// 0 || 0 ----> 0
// 1 || 1 ----> 1
// !非
// var a = 1;
// if (a < 10 && a > 0){
// ++a;
// alert(a)
// }
// if (null && true){
// aler(1);
// }
// if (new Object){
// alert(1);
// }
// if (true && new Object){
// alert("hello")
// }
// 3<<2
// 00001100 = 12
// 00001100>>1 = 00000110 = 6
// alert(3<<2);
// alert(12>>1);
// 1 & 2
// 0000 0001
// 0000 0010
// 0000 0000
// 1 | 2
// 0000 0011
// ^1
// 0000 0001
// 1111 1110
// 异或
// 0000 0001
// 0000 0010
// 0000 0011
// 同或
// 0000 0001
// 0000 0010
// 1111 1100
// if (true & true){
// alert("hello")
// }
// if (1 & 2){
// alert("hello")
// }
// alert(2==2);
// alert(2=="2");
// alert(2==="2");
// alert(25<3);
alert("ba2566545"<"ab3");
</script>
</body>
</html>
点击pycharm上面浏览器

修改js_operation.html文件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<script>
// var a=1;
// var b = a++; //a+=1,a=a+1,先赋值再计算,b=1,a=2;
// var b = ++a; //先计算再赋值,a=2,b=2;
// alert(b);
// alert(a);
// var x = 1;
// alert(x++); // 1
// alert(++x); // 3
// alert(--x); // 2
// alert(x--); // 2
// alert(x) // 1
// 一元加减法
// var a = 3;
// var a = "3";
// var a = "3.2"
// var a = "123a456"
// var a = "123a"
// var a = "a123"
// b = +a;
// b = -a;
// alert(b)
// alert(typeof(b))
// &&逻辑与
// 1 && 0 ----> 0
// 0 && 1 ----> 0
// 0 && 0 ----> 0
// 1 && 1 ----> 1
// ||逻辑或
// 1 || 0 ----> 1
// 0 || 1 ----> 1
// 0 || 0 ----> 0
// 1 || 1 ----> 1
// !非
// var a = 1;
// if (a < 10 && a > 0){
// ++a;
// alert(a)
// }
// if (null && true){
// aler(1);
// }
// if (new Object){
// alert(1);
// }
// if (true && new Object){
// alert("hello")
// }
// 3<<2
// 00001100 = 12
// 00001100>>1 = 00000110 = 6
// alert(3<<2);
// alert(12>>1);
// 1 & 2
// 0000 0001
// 0000 0010
// 0000 0000
// 1 | 2
// 0000 0011
// ^1
// 0000 0001
// 1111 1110
// 异或
// 0000 0001
// 0000 0010
// 0000 0011
// 同或
// 0000 0001
// 0000 0010
// 1111 1100
// if (true & true){
// alert("hello")
// }
// if (1 & 2){
// alert("hello")
// }
// alert(2==2);
// alert(2=="2");
// alert(2==="2");
// alert(25<3);
// alert("ba2566545"<"bab3");
alert("25"<3)
</script>
</body>
</html>
点击pycharm上面浏览器

浙公网安备 33010602011771号