数据类型的转换:
字符串转数值类型:
1、 Number()方法
语法:Number(x)
作用:将x转为数值类型
返回值(结果):转换后的值
转换规则:把x当成一个整体来进行转换的
2、parseInt()方法
parseInt(x)
作用:将x转为数值类型,只保留整数部分
返回值(结果):转换后的值
转换规则:从左到右一个一个进行转换,
第一个转换不了,返回NaN
将转换成功的保留
3、parseFloat()方法
parseFloat(x)
作用:将x转为数值类型,可以保留小数部分
返回值(结果):转换后的值
转换规则:从左到右一个一个进行转换,
第一个转换不了,返回NaN
将转换成功的保留
4、隐式转换 +(正号) - * / %
布尔转数值类型:
Number()可以将布尔转为数值 true是1,false是0
parseInt()/parseFloat不可以将布尔转为数值
其他类型转为字符串
1. String()
语法:String(x)
作用:转为字符串类型
返回值(结果):字符串类型的值
2. toString()
语法:x.toString()
作用:转为字符串类型
返回值(结果):字符串类型的值
3. 隐式转换:
+(拼接) 10+""---》将数值10转成字符串
String(10)
10.toString()
区别:String()可以将任意其他类型转为成字符串类型
toString()不能将null和undefined转为字符串,其他的都可以转
转为布尔类型:Boolean()
// 使用:Boolean(x)
// 作用:转布尔的
// 返回值(结果):true或者false
// 规则:只能将null,undefined,'',0,NaN把他们转为false,其他的全部是true
检测是否为非数字: isNaN()
语法:isNaN(x)
作用:检测x是否是非数字,是非数字结果是true,不是非数字是false( 是数字返回false,不是数字返回true)
举例:isNaN("abc")--》true isNaN(10)--->false
返回结果:true或者false
注意点:isNaN(x)等价于isNaN(Number(x))
isNaN(true)等价于 isNaN(Number(true))
算术运算符
+ 3+2=5
- 3-2=1
* 3*2=6
/ 3/2=1.5
% 3%2=1
赋值运算符
a = b/将b赋值给a
逻辑运算符
&& 且,并且
使用:布尔类型值&&布尔类型值
特点:一假即假
|| 或,或者
使用:布尔类型值||布尔类型值
特点:一真即真
! 取反
使用 !布尔类型值
特点:颠倒真假
比较运算符(关系运算符):比较出来的结果是一个布尔类型的值
>
<
>=
<=
==(不严格等号):只比较符号左右的数值,不比较他们的类型
===(严格等号): 即比较符号左右的数值,又比较他们的类型
!=
注意:除了===,其他的都会进行隐式转换
自加自减运算符
符号:++(自加) -- (自减)
使用:a++(后置自加)、++a(前置自加)
区别:1、单独使用时,没有区别都是自身加1
2、在参与运算,输出,赋值等操作的时候,++a,先加1,再操作(运算,输出,赋值)
a++,先操作(运算,输出,赋值),后加1
1、单独使用时,没有区别,都是自身加1
2、在参与输出,赋值,运算等操作的时候,前置++,先加1,再操作 。后置++,先操作,后加1
运算符的优先级
var x = 10;
console.log(1 + x++);//11
流程控制语句
顺序语句
分支语句:if语句、switch语句
循环语句
if语句
语法1: if(关系表达式){}
关系表达式:能够计算出一个真或者假的表达式
执行流程:当关系表达式为true,就执行{}内部的代码
当关系表达式为false,就不执行{}内部的代码
语法2: if(){}else{}
执行流程:当关系表达式为true,就执行if后{}内部的代码
当关系表达式为false,就执行else后{}内部的代码
语法3: if(true){}else if(){}else if(){}..else{}
执行流程:从上向下进行条件的判断,满足哪个条件执行对应的代码,后面代码就不会执行啦
三目运算符:
写法: 条件表达式?表达式1:表达式2
运行流程:条件表达式为true,走表达式1,为false,走表达式2
4>2?alert('哈哈'):alert('嘿嘿')
true?"哈哈":"嘿嘿"
console.log(true?"哈哈":"嘿嘿");
奇数和偶数的判断
var x = prompt('请输入数字...')
var res = x % 2 == 0 ? "是偶数" : '是奇数';//把运算的结果存储到res变量中
console.log(res);
闰年和平年的、 奇数和偶数的判断通过三目运算符或者if双分支做一下
成绩(if的多分支)