前言
什么是JS呢?全称是JavaScript,是能够运行在JS解释器中的脚本语言。那知道了什么是JS,那你知道什么是ES吗?如果你了解JS的前世今生,你就知道什么是ES了,ES就是JS,相当于ES是大名,JS是小名。就想给同学起外号,10年之后,只记得他的外号,而忘记他的真名了。现在呢,我们就一起来了解一下JS的数据类型吧。
宏观把控
先来一张图简单了解一下js的数据类型都有哪些内容:
如何获取数据类型呢?
这里就涉及到了一个运算符:typeof,它的语法是string typeof(变量);
举个例子吧:
alert(typeof "123"); //弹出string
alert(typeof true); //弹出boolean
alert(typeof 123); //弹出number
这是强调一下:js是一种弱类型的语言,所有的变量都是用var来声明的,而且不会检查类型,如下代码都对:
var num=10;
alert(typeof num);
num="123";
alert(typeof num);
num=true;
alert(typeof num);
num=new Date();
alert(typeof num); //object
数据类型之基本类型
1.都有哪些基本类型呢?
如上图所示,大致有3种,基本类型(也叫值类型):number,boolean,string;注意这三个都是小写的,如果首字母大写了,Number,String,Boolean就变成包装类型了。
2.基本类型的转换
1)任何一个不为空的对象转换成boolean值都为true;
2)数字转成字符串
string(数字)
数字+""
数字.toString()
3)字符串转数字
字符串-0
number(字符串)
parseInt() parseFloat()
4)转boolean
否定两次,真假值不变,但是可以自动转成bool,例如:
if(!!val) {
}
数据类型之引用类型
1.对象类型
对象类型返回object,例如数组与日期都是对象类型:
alert(typeof {}); //object 对象类型
alert(typeof new Array()); //object
alert(typeof new Date()); //object
2.函数类型
先定义一个函数,之后取这个函数的类型就是函数类型:
var func=function() {};
alert(typeof func); //function
alert(typeof typeof func); //string
数据类型之空类型
1.null
值为null时,取类型,也会返回object,例如:
var number=null;
alert(typeof number); //object
2.undefined
undefined表示为“未定义”,如果声明一个变量,但是未赋值,取类型就会显示undefined。
var num;
alert(typeof num); //undefined
总结
任何一门语言都有自己的数据类型,他们之间有共同点,但是也有自己独特的内容,快去发现他们的不同吧。