JavaScript 基础类型,数据类型
1.基础类型:undefined,null,Boolean,Number,String,Symbol
Undefined类型:一个没有被赋值的变量会有个默认值undefined;
Null类型:null类型只有一个值null;
布尔类型:布尔表示一个逻辑实体,可以有两个值:true和false;
数字类型:除了能够表示浮点数外,还有一些带符号的值,+Infinity,-Ifinity和NaN(非数值);
字符串类型:字符串类型用于表示文本数据,字符串中的每个元素占据了字符串的位置,
第一个元素的索引为0,下一个是索引1。
符号类型:符号类型是唯一的并且是不可修改的。
2.数据类型:数值,字符串值,数组(引用类型),对象(引用类型)。
对象又可以分成三个子类
1.狭义的对象(object)
2.数组(array)
3.函数(function)
3.typeof和instanceof的作用和区别
instanceof和typeof都能用来判断一个变量是否为空或者是什么类型的变量。
typeof用以获取一个变量的类型,返回结果:number,boolean,string,function
objcet,undefined,对于array,null等特殊对象使用typeof一率返回objcect。
typeof 123 === 'numer' // 判断是否是数字
typeof '123' === 'string' //判断是否为字符串
typeof true === 'boolean' // 判断是否为布尔值
typeof a === 'function' // 判断是否为函数
instanceof用于判断一个变量是否为某个对象的实例,如a = new Array();
alert(a instanceof Object) 会返回true,同时alert(a instanceof Object)也会
返回 true,这是因为Array是object的子类。
4.基本数据类型的值存在栈中,复杂数据类型在栈中存的是地址,当基本类型作为参数传给函数的时候,函数对其改变不会改变外面的值,
复杂数据类型作为参数传给函数时,函数内部对其参数值的修改外部变量的值。
5.内存分为四个区域:栈区(堆栈),堆区,全局静态区只读区(常量区和代码区)
JavaScript 基础类型,数据类型