数据类型及方法
数据类型
- number 不区分整数和浮点数
- string 字符串
- boolean true / false 布尔
- object null 数组
- function 函数
- undefined 未定义
number方法
method | DES |
---|---|
Number() | 构造函数,参数必须全为数字,否则返回NaN(Not a Number) |
parseInt() | 将参数转换为数字,整数部分遇到不是数字就停 |
parseFloat() | 讲参数转换为数字,遇到不是数就停。 |
toFixed() | 保留小数(四舍五入),返回字符串 |
注:NaN数据本身不相等,类型为Number
var str = "101.123px";
var n = Number(str);
alert(isNaN(N));//true
alert( n == n );//false
Math数学函数
Method | DES |
---|---|
Math.pow() | 求次方 |
Math.round() | 四舍五入到整数 |
Math.ceil() | 向上取整 |
Math.floor() | 向下取整 |
Math.min() | 取最小值 |
Math.max() | 取最大值 |
Math.random()*n | 取0-n的随机数 |
var n = Math.random()*10 + 20//取10到30之间随机数
parseInt(n)取整
string 方法
Method | DES |
---|---|
str[index] | 取单个字符 ———— 兼容IE8+ |
str.charAt( index ) | 取单个字符 ———— 兼容所有* |
Number.toString() | 转换数字为字符串 |
str.toUpperCase() | 将字符串字母变为大写 |
str.toLowerCase() | 将字符串字母变为小写 |
str.indexOf | ("想要查找文本", 查询的起始位置) |
str.substring() | 截取字符串(参数之间会做比较,哪个参数小放前边, 参数为负数的时候,变为0) |
str.slice() | 截取字符串(参二不能小于参一) |
str.split("要以它作为分割的文本") | 返回数组 |
Boolean布尔值
判断条件真假(true:1/flase:0)
五个假语句如下,其余都为真,包括空对象、空数组
undefined
null
0
NaN
""
注:null 和 undefined
null转换为数字的时候 为0,在做条件判断为假 类似于正确空值的填补
undefined 转换为数字 为NaN,在做条件判断为假 类似于错误空值的填补
null 关键字, 非对象
undefined ==> undefined
1+undefined ==> NaN
1+null ==> 1
js运算符
DES | SIGN |
---|---|
运算符 | + - * / % |
赋值运算 | = += -= /= %= |
判断条件符号 | > < == <= >= !=不等于 !== 不全等于 ===恒等于,还会判断数据类型 |
逻辑运算符 | 与&& 或|| 非! |
能被计算的时候才会执行计算,不能计算则会出现各种问题 (报错 NaN);
- 除了加号 - * / % 会强制将参数转换为数字
- 加法运算 只要有一个为字符串,相加则是字符串拼接
- &&条件遇到假就停,返回flase
- ||条件遇到真就停,返回true
for循环
for(var i=0; i<10; i++){
if( i==5 ){
//continue;跳过本次循环,到循环尾
break;//中断循环
}
console.log(i);
}
for(var key in document) {
console.log(key +"======"+document[key]); // 查看document里面所有的方法
}
流程控制
if ( 10>1 ) {
alert(1);
}else if( 5<50 ){
alert(2);
}else if( 10>20 ){
alert(3);
}
// 只有一条真语句
if( 8 > 0 ) alert('This is 8 > 0');