JS(JavaScript)
数据类型;
1.原始类型;
- number类型;
实为数字JS不区分整数和浮点类型;
整数类型;包括负整数,0和正整数;
浮点类型表示小数
/*
number类型:整数(Intger)和浮点数(小数 | float或double)
* JavaScript并不区分整数与浮点数
*/
var num = 100;/* 1.变量的定义并初始化;2.字面量或直接量定义数字值 */
- 浮点类型;`
是只该数值包含整数部分,小数部分,小数点和小数部分
var num = 0.1;
console.log(num);
/*浮点类型, (.1)等于(0.1)的含义;不推荐使用*/
var num1 = .1;
console.log(num1);
var num2 = 10.1;
console.log(num2);
var num3 = 10.0;
console.log(num3);
/*浮点类型;(.0)表示整数*/
var num4 = 10.;
console.log(num4);
/*浮点类型;(.)表示整数*/
- 误差;`
只能表示游戏的个数
var x = 0.3;
var y = 0.2;
console.log(x - y);//0.1
/*number类型的小数,在计算可能会有误差
* 不是所有的小数计算都会有误差
* 以数字值换算,将换成整数计算并将结果为小数
*/
- NaN;`
他是个特殊的数值,表示该值与任何值不想等,包括自身
var num = Number('爱新觉罗');//将一普通文本内容转换为Number类型
console.log(num);/*NaN*///这不是个数字值
/*NaN在Number类型里是个特殊值
* 该值不是个数字值;
* 而它还是个Number类型
* NaN不等于自身和任何值*/
console.log(10 == 10);//true
console.log(NaN == NaN);//false
- string类型;`
是由零或多个16位Unicode字符组成字符序列
用'双引号'和'单引号'来表示
var str1 = '爱新觉罗';
var str2 = '爱新觉罗';
console.log(str1);
/*string类型;JS(JavaScript)字符串是由单引号和双引号包裹当中
JS(JavaScript)中的双引号与单引号没什么区别,建议用单引号
*/
var str3 = '"爱新觉罗"是清朝皇室家族';
console.log(str3);
var str4 = '"爱新觉罗"是清朝皇室家族';
console.log(str4);
/*string类型;文本是需要用单引号或双引号
如果是需要双引号;字符串只能用单引号
如果是需要单引号;字符串只能用双引号
*/
- boolean(布尔)类型;`
有两个值,是以布尔类型的true;false,来表示
var boo = true;
console.log(boo);
/*boolean类型;只有两个值:
1.true:真的;2.false:假的
这两值小写
*/
var boo1 = TRUE;
console.log(boo1);
/*大写和大小写混合;JS(JavaScript)识别另一变量名称*/
2.typeof运算符;
是定义为给JS检测给定变量的数据类型
var num = 100;
var boo = true;
var str = '爱新觉罗';
/*
typeof运算符;判断原始类型
语法结构;typeof变量名称
原始类型名称(string类型)
*/
console.log(typeof num);// number
console.log(typeof boo);// boolean
console.log(typeof str);// string
var result = typeof num;
console.log(result);// number
console.log(typeof result);// string
3.包装类型;
- Number类型;
是原始类型number类型对应的包装类型
/*
通过包装类型创建个数字值类型的变量
var 变量名称 = new Number(数字值)
new Number();创建了个Number类型对象
以下两种方式创建的数字值,在使用时没什么区别
*/
/* 构造函数方式 */
var num1 = new Number(100);
console.log(num1);/* [Number: 100] */
/* 字面量/直接量方式 */
var num2 = 100;
console.log(num2);/* 100 */
console.log(typeof num2);// number
console.log(typeof num1);// object(对象)
- String类型;
是原始类型string类型对应的包装类型
var str = new String('爱新觉罗');
console.log(str);
var str1 = '爱新觉罗';
console.log(str1);
- Boolean类型;
是原始类型boolean类型对应的包装类型;
var boo1 = new Boolean(true);
console.log(boo1);
var boo2 = true;
console.log(boo2);
4.instanceof运算符;
左操作数一个包装类型变量,右操作是对应的数据类型;
左侧的变量是右侧的数据类型;册返回true;否则返回false
var str = new String('爱新觉罗');
var num = new Number(100);
var boo = new Boolean(true);
// typeof运算符只能判断原始类型
console.log(typeof str);// object
console.log(typeof num);// object
console.log(typeof boo);// object
// instanceof运算符用于判断引用类型(包装类型)
console.log(str instanceof String);// true
/*instanceof运算符
用于判断引用类型(包装类型)
语法结构不同;变量名称;instanceof 引用类型名称
得到结果不同;布尔类型的值(true或false)
*/
5.特殊类型;
- undefined类型;
表示变量声明但未被赋值,是所有未赋值变量默认值,并且很少使用
var v;
console.log(v);
var c = undefined;
console.log(c);
console.log(typeof v);// undefined - 类型名称
/*
undefined;在JS(JavaScript)实为空的含义
如一个变量值等于undefined;变量是存在的,没有值
undefined类型值只存在一个值(undefined)
定义变量时;只声明,而不初始化值;undefined
定义变量时;初始化值为 undefined;undefined
注意;得到undefined值情况不止以上两种
*/
- null类型;
表示一个没有任何内存地址的变量,也可能指向个具体内存地址,一般用于释放资源
var v = null;
/*用于变量从内存里释放出来
指定变量值赋值为null
只有有一个null值
*/
console.log(typeof v);// object
/*以下结果是错的*/
// console.log(v instanceof Null);// 结果为报错
console.log(v instanceof Object);// false
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。