美文网首页
JavaScript-对象数据类型

JavaScript-对象数据类型

作者: 阿九是只大胖喵 | 来源:发表于2017-02-22 12:39 被阅读0次

    对象数据类型由多组[属性名和属性值]组成,即多组键值对组成,由多个key: value组成。
    属性名和属性值是用来描述这个对象特征的。
    例如,要定义一个人的基本信息,如果只用基本数据类型,很难将这个人的信息给有效完整的表达,然而使用对象数据类型则可以很方便的表示:

        var personInfo = {
            name: 'derrick', 
            age: 20,
            height: '180cm',
            weight: '70kg'
        };
    

    这样就创建好了一个名为personInfo的对象。


    对象有两种创建方式,上述的是创建对象的方式之一,叫做字面量对象创建方式,写法为:

    var obj = {
      key1: value1,
      key2: value2,
      ...
    }
    

    第二种创建对象的方式是实例创建方式,其基本语法如下:

    var obj = new Object();
    

    在这种方式下,如果要对对象增加属性,则可以用一下两种方法:

    // 方法一:
    obj.name = 'derrick';
    // 方法二:
    obj['name'] = 'derrick';
    

    那如何修改对象中的属性值呢?
    修改原有属性名的属性值,规定一个对象中的属性名不能重复,如果之前有,就是修改,没有就是增加。
    例如,对于上述的对象obj:

    obj.name = 'rose'; 
    // obj中已经存在了name属性,所以这样可以直接修改
    obj.age = 10;
    // obj中没有age属性,所以这样是在obj中添加了age属性
    

    获得对象的属性值:
    使用点语法:直接 对象名.属性名 后者中括号的方法对象名[属性名]就能获得对象的属性值了。如果属性名不存在,则返回 undefined

        console.log(obj['name']); // rose
        console.log(obj.name); // rose
        console.log(obj.firstName); // undefined
    

    删除对象的属性:

    • 假删除
    obj.age = null;
    console.log(obj.age); // null
    
    • 真删除
        delete  obj.name;
        console.log(obj.name); // undefined
    

    JavaScript中对象,类,实例的区别:

    • 对象是抽象的概念,是指的一种泛指,js中,万物皆对象。
    • 类是对对象的具体的细分。
    • 实例是类中的一个具体的事物。
      例如:自然界中也是万物皆对象,所有的东西都可以具体的细分,可以分为:人类,植物类,动物类,物体类...而每一个人都是人类中的一个具体的实例。

    所以对象数据类型还可以再细分:

     var obj = {}; // 对象(Object)
     var ary = []; // 数组 (Array)
     var reg = /^$/; // 正则 (RegExp)
    // 时间(Date), 字符串类(String), 布尔类(Boolean), 数学函数(Math) ...等对应的实例:对象、数组、正则、时间...
    

    相关文章

      网友评论

          本文标题:JavaScript-对象数据类型

          本文链接:https://www.haomeiwen.com/subject/gxtmwttx.html