美文网首页
JavaScript 对象研究

JavaScript 对象研究

作者: cwxyz | 来源:发表于2017-05-28 20:27 被阅读29次

    对象,简单的理解就是,除了单身旺,都有对象。非常装13的理解就是,万物皆为对象。

    在 JavaScript 里面,跟 C/C++ 实现对象的方式有点不一样。

    举一个小栗子

    举个栗子

    JavaScript 中的对象,在实例化之后,还能继续添加属性,例如这样:

    var obj = {
        hello : function () {
            console.log('hello world!');
        }
    }
    //直接添加属性
    obj.name = 'obj';
    obj.helloWithWords = function (str) {
        console.log(str);
    }
    obj.hello();
    //运行添加的属性
    obj.helloWithWords('my name is ' + obj.name);
    

    运行结果:

    hello world!
    my name is obj
    

    看了上面的例子,我们就来研究一下这个 JavaScript 对象这个 对象

    JavaScript 中的对象是一个名称与值配对的集合.这种名称与值的配对被称为属性.如此看来,JavaScript 对象可以定义为属性的集合。

    JavaScript 可以非常方便的添加属性,但是访问其没有的属性,其值是 undefined 而不是 null,这是需要注意的地方。

    对象的创建

    在 JavaScript 里有以下几种方式来创建一个对象。

    使用对象初始化器

    var obj = {
        name : value_1,
        1 : value_2,
        "name" : value_3
    }
    

    使用构造函数

    function Obj(pro1, pro2, pro3){
        this.pro1 = pro1;
        this.pro2 = pro2;
        this.pro3 = pro3;
    }
    
    var myObj = new Obj(1,2,3);
    

    使用 Object.create 方法

    var obj = {
        name : value_1,
        1 : value_2,
        "name" : value_3
    }
    
    var myObj = Object.create(obj );
    

    使用 class 关键字

    class Obj {
      constructor(pro1, pro2) {
        this.pro1= pro1;
        this.pro2= pro2;
      } 
      function1() {
        return "this is a function";
      }
    }
    

    对象的使用

    可以使用 [] 来访问,也可以使用 . 来访问。

      obj.por1 = "pro1";
      obj["pro1"] = "pro1";
    

    Tips

    • JavaScript 所有对象均为实例
    • JavaScript 可以动态添加属性

    拓展阅读

    相关文章

      网友评论

          本文标题:JavaScript 对象研究

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