这篇文章上次修改于 2081 天前,可能其部分内容已经发生变化,如有疑问可询问作者。
js的数据类型分类:
基本数据类型:number、string、boolean、undefined
复合数据类型:object(json、array、null)、function
typeof运算符:返回当前变量的数据类型。
语法:typeof(变量名) 或 typeof 变量名
基本数据类型——存储单一的数据类型
1、number类型:数值,纯数字,表示整数和浮点数
1)整数
2)小数
3)NaN:not a number,在数值运算时,得不到一个正确的数字,就是NaN
2、string类型:字符串,用引号引起来,由字符、数字、标点符号等组成的序列
3、boolean类型:布尔型,只有真true和假false这两个值
4、null和undefined
null:表示值为空
undefined:表示变量没有设置初始值——变量已经声明,但没有赋值
not defined 表示变量没有定义
复合数据类型:
1、object对象类型:一组数据和功能的集合,拥有属性和方法——万物皆对象
访问属性:对象.属性名
使用方法:对象.方法名()
1)json:一种轻量级的数据交互格式,基于ECMAScript的一个子集,json格式的数据需要使用大括号括起来,里面的数据:key:value——键值对存储
2)array: 把多个数据存储在一起
2、function 函数:用来存储代码块
function 函数名(){ 代码块 }
数据类型转换:隐式类型转换和强制类型转换
1)其他类型转成字符串型
使用方法:toString、String
变量.toString()------String()
String(要转换的对象)
console.log(num,String(num));
console.log(String(str));
console.log(bool,String(bool));
var num = 10;
console.log(num,num.toString());
2)其他类型转成数值型
使用方法:Number()
parseInt() 转成整型
parseFloat() 可以保留小数
运算符:
* 1、算术运算符:+、-、*、/、%取余、++自增、--自减
* ++或--都是在自身的基础上加1或减1
c = a++;//a--2 先赋值后自增
d = ++a;//a---3 先自增后赋值
2、赋值运算符:= 、+=、-=、*=、/=、%=
3、比较运算符:字符串的比较按照ASCII码进行比较,一般建议使用三个等号
比较(数值和数据类型都相等);>、<、>=、<=、==、===、!=(不等于)、!==
4、逻辑运算符:与(且,一假为假)&&,或(一真为真)||,非!(取反)
5、三目运算符:只能执行一条语句,不能出现分号
语法:条件?语句一:语句二
js中的隐式类型转换:
数据在进行+、-、*、/运算时会自动将数据转换数据类型
1、加法:如果是文本,表示链接字符串
如果是数字,表示简单的加法运算
数字和字符串加结果为字符串
数字和布尔型数据相加结果为数值
console.log(10 + 'ab');//10ab
console.log(10 + true);//11
console.log(10 + NaN);//NaN
console.log(10 + null);//10
console.log(10 + 2 + 'a' + 3);//12a3
console.log('10' + true);//10true
console.log(false + true);//1
2、减法:如果数值型数据减去一个字符串数据,会自动将字符串转成数值型
如果数值型数据减去一个布尔型数据,会自动将布尔型转成数值型
console.log(10 - '3');//7
console.log(10 - 'a');//NaN
console.log(10 - '');//10
console.log(10 - true);//9
console.log(10 - null);//10
console.log(10 - undefined);//NaN
3、乘法:
console.log(10 * null);//0
console.log(10 * undefined);//NaN
console.log(10 * "");//0
console.log(10 * true);//10
console.log(10 * 'a');//NaN
4、除法
console.log(10/'a');//NaN
console.log(10/'');//Infinity无穷大 除数不能为0
console.log(10/null);
console.log(10/undefined);//NaN
5、取余——取模运算
console.log(10%'a');//NaN
console.log(10%'');//NaN
console.log(10%null);//NaN
console.log(10%undefined);//NaN
6、取反!
if(!1){
alert('1')
}else{
alert('0')
}
没有评论
博主关闭了评论...