其他分享
首页 > 其他分享> > js高级-对象

js高级-对象

作者:互联网

在这里插入图片描述

什么是对象

js对象是拥有属性和方法的数据。是多个数据的封装体,用来表示多个数据的容器。一个对象代表现实生活中的一个事物。在这里插入图片描述

为什么要用对象

方便统一管理多个数据。

对象的组成

属性:属性名(本质为字符串)和属性值任意类型()组成
方法:一种特别的属性=>属性值为一个函数

如何访问对象内部数据

.属性名:编码简单,有时不能用
[‘属性名’]:编码复杂,但可通用

  var person = {
        name : 'Tom',
        age : 12,
        setName: function (name) {
            this.name = name;
        },
        setAge: function (age) {
            this.age = age;
        }
    };
    console.log(person.name);   //Tom
    console.log(person.age);   //12

    person.setName('Bob');
    person['setAge'](23);
    console.log(person.name,person['age']); //Bob 23

问题:什么时候必须用[‘属性名’]的方式访问对象内部数据?
1.属性名包含特殊字符: - ,空格
2.变量名不确定

    var p = {};
    //给p对象添加一个属性,:content-type:text/json
    //p.content-type = 'text/json' //属性名包含特殊字符: - ,空格
    p['content-type'] = 'text/json';
    console.log(p['content-type']); //text/json

    var propName = 'myAge';
    var value = 18;
    //p.propName = value;
    // 变量名不确定,此时的propName相当于去对象里面找到propName,然后赋值,但没有属性名为propName的属性

    p[propName] = value; //propName为变量非字符串,故不用‘’
    console.log(p[propName]); //18

标签:console,name,对象,age,高级,js,person,propName,属性
来源: https://blog.csdn.net/weixin_43548815/article/details/110436762