1. 其他类型转换为数值类型
-
number
-
parsenInt
-
parseFloat
-
隐式转换 +(正好) - * / %
-
布尔转数值类型:
Number()可以将布尔转为数值 true是1 false是0
parseInt()/parseFloat不可以将布尔转为数值
例:console.log(typeof(a+0));//这个不行
console.log(typeof(+a));//正号,可以转为数值类型
2. 其他类型转为字符串类型
-
string()
返回值(结果):字符串类型的值
-
toString()
语法:x.string()
返回值(结果):字符串类型的值
-
隐式转换:
+(拼接) 10+" " ----->将数值10转成字符串
String(10)转成字符串
10.toString()
区别:String()可以将任意其他类型转为字符串类型
toString()不能将null和undefined转为字符串,其他的都可以转
3. 其他类型转为布尔类型
-
转为布尔类型:Boolean()
-
返回值(结果):true或flase
-
规则:只能将null、undefined、‘ ‘ 、0、NaN转为false,其他的全部是true
4. 检测是否是非数字类型
-
语法:isNaN(x)
作用:检测X是否是非数字,是非数字为true,不是非数字为false
返回值:true或false
注意点:isNaN(x)等价isNaN(Number(x))
isNaN(true)等价于 isNaN(number(true))
5. 运算符
-
算术运算符
+、-、*、/、 %
-
赋值运算符
(1) = :赋值
(2) += :
a=10;a+=20;等价于a=a+20;将左边和右边求和,重新赋值给a
(3) -=
(4) *=
(5) /=
(6) %=
-
逻辑运算符
(1) && 且,并且
使用:布尔类型值&&布尔类型值
特点:一假即假
(2) || 或,或者
使用:布尔类型值||布尔类型值
特点:一真即真
(3) ! 取反
使用 !布尔类型值
特点:颠倒真假
-
比较运算符
(1) 比较出来的结果是一个布尔类型的值
>
<
>=
<=
==(不严格等号):只比较符号左右的数值,不比较他们的类型
===(严格等号): 即比较符号左右的数值,又比较他们的类型
!=(不等)
注意:除了===,其他的都会进行隐式转换
-
自加自减运算符
符号:++(自加) --(自减)
使用:a++(后置自加) ++a(前置自加)
区别:1.单独使用时,没有区别都是自身加1
2.在参与运算,输出,赋值等操作时候
++a,先加1,在操作
a++,先操作,后加1
-
运算符的优先级
6. if分支结构案例
-
// 通过多分支,判断一个人成绩,在A,B,C,D
// var x = +prompt('请输入您的战绩...');
// if (x >= 90&&x<=100) {
// alert('真棒,优秀,漂亮')
// }
// else if (x >= 80) {
// // 只要代码能走到这儿,说明x是小于90的
// alert('良好,能行,还阔以...')
// }
// else if (x >= 60) {
// alert('就这,还得加油...')
// }
// else if (x >= 0) {
// alert('末班吧....种地吧,喂猪吧...')
// }else{
// alert('输入的成绩有误...')
// }
-
// 双分支的案例演示
// var x = prompt('请输入您想输入的数字...');
// // 奇数:1 3 5 7 对2取余数,得到的是1
// // 偶数:2 4 6 8
// if (x%2==0) {
// alert('双的,偶数')
// }else{
// alert('单的,奇数')
// }
-
// 闰年(1年366天,闰年在2月份的时,是29天): 能被4整除且不能被100整除,或者能被400整除
// 平年(1年365天,闰年在2月份的时,是28天):
// var x = prompt('输入年份...')
// if (x % 4 == 0 && x % 100 != 0 || x % 400 == 0) {
// alert('是闰年')
// } else {
// alert('是平年')
// }
7. 分支结构
-
语法1: if(关系表达式){}
关系表达式:能够计算出一个真或者假的表达式
执行流程:当关系表达式为true,就执行{}内部的代码
当关系表达式为false,就不执行{}内部的代码
语法2: if(){}else{}
执行流程:当关系表达式为true,就执行if后{}内部的代码
当关系表达式为false,就执行else后{}内部的代码
语法3: if(true){}else if(){}else if(){}..else{}
执行流程:从上向下进行条件的判断,满足哪个条件执行对应的代码,后面代码就不会执行啦
8. 三元运算符
-
三元运算符:
写法: 条件表达式?表达式1:表达式2
运行流程:条件表达式为true,走表达式1,为false,走表达式2
例:var x = prompt('请输入数字...')
var res = x % 2 == 0 ? "是偶数" : '是奇数';//把运算的结果存储到res变量中
console.log(res);