一、运算符:
算数运算符:+,-,*,/,%,++,--
赋值运算符:=,+=,-=,*=,/=,%=
比较运算符:>,<,>=,<=,!=,==,===
逻辑运算符:&&,||,!
三元运算符:条件表达式?true_value:false_value
==与===:
==会进行类型转换,===不会进行类型转换
二、类型转换:
字符串类型转为数字:
将字符串字面值转为数字,如果字面值不是数字,则转为NaN
其他类型转为boolean:
Number:0和NaN为false,其他均转为true
String:空字符串为false,其他均转为true
Null和undefined:均转为false
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<script>
/*
运算符:
算数运算符:+,-,*,/,%,++,--
赋值运算符:=,+=,-=,*=,/=,%=
比较运算符:>,<,>=,<=,!=,==,===
逻辑运算符:&&,||,!
三元运算符:条件表达式?true_value:false_value
==与===
==会进行类型转换,===不会进行类型转换
类型转换:
字符串类型转为数字:
将字符串字面值转为数字,如果字面值不是数字,则转为NaN
其他类型转为boolean:
Number:0和NaN为false,其他均转为true
String:空字符串为false,其他均转为true
Null和undefined:均转为false
*/
var a = 10;
var b = '10';
var c = 10;
// alert(a==b) // true
// alert(a===b) // false
// alert(a==c) // true
alert(parseInt("12")); // 12
alert(parseInt("12A45")); // 12 遇到A无法类型转换后面的就不转换了
alert(parseInt("A45")); // 无法类型转换为int,直接转为NaN(not a number)
if(0) {
alert("0转换为false");
}
if(NaN) {
alert("NaN转换为false");
}
if(-1) {
alert("其余的均转换为true");
}
if("") {
alert("空字符串为false")
}
if(" ") {
alert("非空皆为true")
}
if(null) {
alert("null为false")
}
if(undefined) {
alert("undefined为false")
}
</script>
</body>
</html>