基本类型(5个):
undefined null boolean number string
基本类型保存在内存中的栈中,大小固定,复制其变量时会创建这个值的一个副本
引用类型的值是对象,保存在堆内存中
引用类型的变量实际上是一个指针,它保存在栈中,指向堆内存中的对象
复制引用类型变量实际是复制该指针,所以他们都指向同一个对象
用instanceof确定一个值是哪种引用类型
var s="sss";
var sub=s.substring(2);
s是基本类型值却有方法?
实际上后台已经自动完成了一系列处理,当第二行访问s时,后台会完成下列处理:
1,创建一个string类型的实例
2,在实例上调用指定方法
3,销毁这个实例
实际上就相当于执行了下列过程:
var s=new String("sss");
var sub=s.substring(2);
s=null;
上面过程适用于String Boolean Number
undefined null boolean number string
基本类型保存在内存中的栈中,大小固定,复制其变量时会创建这个值的一个副本
用typeof确定一个值是哪种基本类型
引用类型的值是对象,保存在堆内存中
引用类型的变量实际上是一个指针,它保存在栈中,指向堆内存中的对象
复制引用类型变量实际是复制该指针,所以他们都指向同一个对象
用instanceof确定一个值是哪种引用类型
引用类型包括:object array date regexp function
var s="sss";
var sub=s.substring(2);
s是基本类型值却有方法?
实际上后台已经自动完成了一系列处理,当第二行访问s时,后台会完成下列处理:
1,创建一个string类型的实例
2,在实例上调用指定方法
3,销毁这个实例
实际上就相当于执行了下列过程:
var s=new String("sss");
var sub=s.substring(2);
s=null;
上面过程适用于String Boolean Number