1. 对象的概念
用户描述现实世界中的万千世界
一组由键值对组成的无序集合
键的数据类型都是字符串,值可以是任意数据类型
案例说明
<script>
var xiaoming = {
name: 'xiaoming',
height: 179,
weight: 85
};
console.log(xiaoming);
</script>
// 对象键值对的键,如果是符合变量的命名规范写的,键不用单引号或双引号引起来,否则要
// 对象最末尾的键值对后,逗号不需要加,否则低版本浏览器会报错
2. 对象属性的访问
对属性的访问
对象名.属性名,常用这种方式访问
对象名['属性名']
案例说明:访问存在的属性
<script>
var xiaoming = {
name: 'xiaoming',
height: 179,
weight: 85
};
console.log(xiaoming.name); // xiaoming
console.log(xiaoming['name']); // xiaoming
</script>
案例说明:访问不存在的属性
<script>
var xiaoming = {
name: 'xiaoming',
height: 179,
weight: 85
};
console.log(xiaoming.age); // undefined
</script>
3. 对象属性的添加或修改
对象名.属性名 = 新增/修改的内容
<script>
var xiaoming = {
name: 'xiaoming',
height: 179,
weight: 85
};
xiaoming.age = 18;
console.log(xiaoming.age); // 18
xiaoming.name = 'rulai';
console.log(xiaoming.name); // rulai
</script>
4. 删除对象属性
delete 对象名.属性名
<script>
var xiaoming = {
name: 'xiaoming',
height: 179,
weight: 85
};
delete xiaoming.name;
console.log(xiaoming.name); // undefined
</script>
5. 检测对象属性是否存在
5.1 检测该属性本对象独有,而不是继承来的属性
对象名.hasOwnProtery()
案例说明:
<script>
var xiaoming = {
name: 'xiaoming',
height: 179,
weight: 85
};
var status = xiaoming.hasOwnProperty('name');
console.log(status); // true
</script>
5.2 检测对象拥有的属性,包括继承来的
'属性名' in 对象名
案例说明
<script>
var xiaoming = {
name: 'xiaoming',
height: 179,
weight: 85
};
var status = 'toString' in xiaoming;
console.log(status); // true
console.log('name' in xiaoming); // true
</script>