一、原始数据类型
数据类型一共有八个,分别为:Number、String、Boolean、Null、Undefined、Object、Symbol(ECMAScript6新定义)、function(函数,在后面的文章中详细讲解)
1. Number:数字类型(包括整数和小数)
num=20;//整数
num=98.76;//小数
//在JS语言中所有数字都属于Number类型
知识点一:数据类型是有范围的
//我们可以通过特殊的方法输出它的最大值和最小值
console.log(Number.MAX_VALUE);//最大
console.log(Number.MIN_VALUE);//最小
知识点二:不要用小数去验证小数
var x=0.1;
var y=0.2;
var sum=x+y;
console.log(sum==0.3);
//虽然此时sum的值为0.3,但是返回的结果依旧为false
知识点三:不要用NaN验证是不是NaN
NaN:是指不是数字,是非数字和数字计算的结果。例如sum=20+"你好"
,结果就为NaN。
isNaN:用来判断变量或者值是不是非数字,如果是非数字,那么输出结果为true。;是数字,输出结果为false。
var num;
console.log(num+10==NaN);//false
console.log("您好"=="我好");//false
知识点四:验证一个结果是不是NaN可以使用isNaN()
var num;
var sum=num+10;
console.log(sum);//NaN
console.log(isNaN(sum));//不是数字结果为true,是数字结果为false
总结:
① 无论是整数还是小数都是数字类型
② 不要用小数验证小数
③ 不要使用NaN判断是不是NaN,应该使用isNaN(值或者变量)
2.String字符串类型
一般会使用单引号或者双引号括起来。例如:var str="34";
(1)获取字符串的长度。
语法:变量.length
(2)转义字符(有兴趣可以去网页上查找)
tab键(水平制表符)→\t 反斜杠→\ 双引号→\ “ 单引号→\ ‘ 退格→\b 走纸换页→\f 换行→\n 回车→\r
① 字符串的拼接:
使用+可以把多个字符串放在一起形成一个字符串
var str1="您好";
var str2="我在敲代码";
console.log(str1+str2);//您好我在敲代码
只要有一个是字符串,其他的是数字,那么结果也是拼接,不是相加
var str1="10";//字符串
var str2=20;//数字
console.log(str1+str2);//1020
如果有一个是字符串,另一个不是字符串,使用“-”符合,此时会发生计算(隐式转换)
var str1="10";
var str2=5;
//浏览器帮助我们自动的把字符串转换成数字类型,这种方式叫:隐式转换
console.log(str1-str2);//5
3.boolean:布尔类型
结果为:true——真;false——假
4.null:空类型
一个对象指向为空,此时可以赋值为null
5.undefined:未定义
值只有一个
什么情况下的结果为undefined?
①变量声明了,没有赋值。
②函数没有明确返回值,如果接受了。
var num;
console.log(num);
如果一个变量的结果是undefined和一个数字进行计算,结果是NaN不是一个数字,也没有意义
var num;
console.log(num+10);//NaN——not an number→不是一个数字
6.object对象
二、获取变量的数据类型的方法
使用typeof获取
语法:
typeof 变量名;
typeof(变量名)
var num=10;
var str="小白";
var float=true;
var nll=null;
var undef;
var obj=new Object();
//是使用typeof获取变量的类型
console.log(typeof num);//number
console.log(typeof str);//string
console.log(typeof flag);//boolean
console.log(typeof nll);//object
console.log(String(nll));//null
console.log(typeof undef);//undefined
console.log(obj);//object