08-对象

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>

猜你喜欢

转载自blog.csdn.net/rulaixiong/article/details/80679587