1、math对象
方法 | 描述 |
---|---|
ceil(x) | 对数进行上舍入(天花板函数) |
floor(x) | 对数进行下舍入(地板函数) |
max(x,y) | 返回x,y最大值 |
min(x,y) | 返回x,y最小值 |
pow(x,y) | 返回x 的 y 次方 |
random() | 返回0-1之间的随机数 (不包含0和1)(伪随机数,可能产生重复数值) |
round(x) | 四舍五入 |
Math.ceil(x) 结果为向上最近的一个整数,没有进行四舍五入
如:
Math.floor(x) 结果为向下最近的一个整数,没有进行四舍五入
2、数据类型判断
typeof可直接获取变量数据类型
NaN也是一个number类型
变量的取值为null时, 变量的数据类型为object
Undefined取值的变量或者变量未赋值: 数据类型为undefined
Infinity(无穷大): 数据类型属于number类型
3、数据类型转换
(一)、字符串转化为数字类型
1、隐式类型转化
只要将数字的字符串与0相减(参与运算都可,加法运算除外)
2、强制类型转换
Number() parseInt() parseFloat()
-
Number() 方式转化:结果为原来的数字,如果有非数字的字符(false,true除外),那么转化失败,为NaN。
-
ParseInt()方法转化:从第一个字符开始判断,遇到小数点或非数字类型,不往后读取,保留的是整数部分, 如果后面跟有非数字的字符,能转化成功,保留前面数字。只含有非字符则转化失败NaN
-
ParseFloat(): 还是保留原来的数字,如果数字后面跟有非数字的字符,那么转化成功,保留数字。只含有非字符则转化失败NaN
(二)将数字类型转换为字符串类型
1、 隐式类型转换
通过prompt方法可以实现转化或者将当前数字和一个字符串相加
2、 强制类型转换(String(), 变量.tostring())
1、String()转换
n1 = String(n1);
2、 .toString()转换
n1 = n1.toString();
(三)将其他数据类型转换为布尔类型
1、隐式转换
var a=0 ; var b=!a; alert(b)
var a=1; var b=!a; alert(b)
2、强制类型转换 :Boolean()
a = Boolean(a);
案例:
4、 逻辑运算符
概念:逻辑运算符用于测定变量或值之间的逻辑
4.1 || 或
-
如果有一个结果为false 和一个结果为true进行或运算 结果为: true
-
如果两个结果都为false , 或运算后结果为false
-
如果两个结果都为true,进行或运算后结果为 true
4.2 && 且
-
如果结果都为true,且运算后结果为true
-
如果有一个结果为false,且运算后结果为false
-
如果两个结果都为false,且运算后结果为false
4.3 !非
如果为true 非运算后 结果为false
如果为false 非运算后 结果为true
注意:逻辑运算必须是两个Boolean类型的数据进行 || && ! 运算
等号运算符,逗号运算符
运算符 | 含义 |
---|---|
== | 等于,比较的是内容 |
=== | 全等,比较的是内容和数据类型 |
!= | 不等于,判断的是内容 |
!== | 不全等于,判断的是内容和数据类型 |
可用逗号隔开 如:
var a=5, b=6, c=7 ;
a=b+c, c=a+b ;
5、 If...else 条件分支
首先是一个“if”,它后面紧跟着一个括号,括号里则是一个条件,确切地说是一个布尔类型的表达式。当条件成立的时候,这个值是true,if里的语句将会得到执行;否则这个值是flase,else里的语句将被执行。
If(条件表达式) 条件表达式的结果必须为Boolean
{
如果条件表达式的结果为true,那么执行这里面的代码
}
Else
{
如果条件表达式的结果为false,那么执行这里面的代码
}
案例:
6、 If ...else if... else 嵌套
If(条件表达式)
{
结果为true 执行该处代码
}
else if(条件表达式)
{
结果为true 执行该处代码
}
else if(条件表达式)
{
结果为true 执行该处代码
}
else{
如果以上代码条件都不满足,执行该处代码
}
7、三元运算符
语法:条件表达式?结果1:结果2
含义:问号前面的位置是判断的条件,判断结果为boolean型,为true时执行结果1,为false时执行结果2。