目录
对象
属于引用类型数据
对象是一组属性和方法的集合
万物皆对象
1.JS中的对象
自定义对象:程序员自己创建的对象
内置对象:JS提供的对象
宿主对象:根据不同的执行环境划分
2.自定义对象创建方式
对象字面量
内置构造函数
自定义构造函数
3.对象字面量创建对象
{
属性名: 属性值, //含有特殊字符的属性名必须添加引号
属性名: 属性值,
...
}
4.属性的访问
对象.属性名;
对象['属性名'] //如果属性名不存在返回 undefined
5.内置函数构造函数创建对象
new Object(); //创建一个空对象,需要单独的添加每个属性
6.遍历属性
通过循环的方式依次访问对象中的每个属性
for - in
for(var k in 对象){
k 代表每个属性名
对象[k] 属性名对应的属性值
}
7.检测属性是否存在
对象.属性名 === undefined 存在-false
对象.hasOwnProperty('属性名') 存在-true
'属性名‘ in 对象 存在-true
8.对象中的方法
方法对应的是一个函数
var person={
name:'TG',
play:function(){
this //指代调用方法的对象,和所在的对象没有关系
}
};
person.play();
原始类型和引用类型存储
原始类型:直接将数据存储在了栈内存
引用类型:将数据保存在了堆内存,自动生成一个地址,然后把地址保存到栈内存(变量);函数也是引用类型的数据
null:空地址,不指向任何堆内存中的数据
引用类型数据的销毁: 如果数据不被任何的地址指向,就会自动销毁;只需赋值null即可销毁引用类型的数据