㈠分类
⑴原始类型(基本类型)
①数字类型:Number
②字符串类型:String
③布尔类型:Boolean
④未定义:Undefined
⑤空:Null
⑵引用类型
㈡数字类型
★可以表示32位的整数以及64位的浮点数
⑴整数:32位即4个字节
①十进制:生活中常用数字
②八进制:逢八进一 var n1 = 0123;
③十六进制:逢十六进一 0-9 A-F组成 var n2 = 0x123;
⑵浮点数:即小数,64位,8字节
var n1 = 34.56; var n2 =4.5e10
㈢字符串类型
⑴表示一系列的文本字符数据
⑵由Unicode字符,数字,标点组成
⑶Unicode下所有的字符,数字,标点,在内存中都占2字节
⑷示例1:
"张".charCodeAt().toString(16)
查看字符"张"的十六进制表现方式,结果为 5f20
⑸示例2:
\u4e00 汉字的起始字符
\u9fa5 汉字的结束字符
⑹示例3:
转义字符:\n 换行; \r回车; \t 一个制表符
㈣布尔类型
⑴作用:用于表示条件的结果
⑵取值:true:真 , 肯定的结果
false:假, 否定的结果
⑶示例:var r1 = true;
var r2 = false;
除条件判断外,做运算时,true可当1运算;false当做0运算
㈤空与未定义
⑴空:null 声明对象未赋值
⑵未定义:undefined
①声明变量未赋值
②访问对象不存在的属性
㈥数据类型转换
★弱类型:
⑴由数据来决定变量的数据类型是什么?
var stu; //undrfined未定义变量的值 stu=25; // number 数字类型的值 stu="25" // string 字符串类型的值
⑵不同数据类型在运算过程中,该如何处理?
var num1=15; //number 数字型 var num2=13; // number 数字型 var result=nu1m+num2; // 值为28 number类型 var str1="15"; //string var result1 = num1 + str1;
㈦隐式转换
★自动转换,由于JS在运算过程中,自己进行转换的操作,不需要人为的参与。
⑴函数:
①typeof() 或 typeof
②示例:
var num1 = 15; var s = typeof(num1);:获取num1的数据类型 var sl = typeof num1;:获取num1的数据类型
⑵NaN:
①Not a Number 不是一个数字
②isNaN(数据):是 不是一个数字 //判断数据是否为非数字
③结果为Boolean类型 :
结果为true:不是一个数字
结果为false:是一个数字
④注:所有的数据类型 与 string 做 + 运算时,最后的结果都为string
㈧转换函数 - 显示转换(强制转换)
⑴toString()
①将任意类型的数据转换为string类型
②变量 .toString();
③会得到一个全新的结果,类型为string
var num = 15;
var str =num+"";
⑵parseInt()
①整型:Interger
②作用:获取 指定数据的 整数部分
③语法:var result = parseInt(数据);
④注意:parseInt,从左向右依次转换,碰到第一个非整数字符,则停止转换。如果第一个字符就是非整数字符的话,结果为NaN
⑶parseFloat()
①Float:浮点数 /小数
②作用:将指定数据转换成小数
③语法:var result = parseFloat(数据);
④示例:
var result = parseFloat("32.25"); //输出32.25 var result = parseFloat("32.25你好!"); //输出32.25 var result = parseFloat("你好32.25"); // 输出NaN
⑷Number
①作用:将一个字符串解析为number
②语法:var result = Number(数据);
③注意:如果包含非法字符,即无论在数字的开头还是结尾,都返回NaN。