zoukankan      html  css  js  c++  java
  • javascript:利用Object.create()方法创建对象

    在javascript里面,我们知道有两种常见的创建对象的方法,一种是使用对象直接量:

    对象直接量是由若干值/键对组成的映射表,值/键对用逗号”,“分隔开,整个部分用花括号”{}“括起来。

    例如:

    var empty={};
    var people = {
      name:'kobe',
      age:'34'
    };
    另外一种方法是通过new创建对象:在new后面使用一个函数调用,这个函数也成为构造函数,通过new来初始化一个新的对象。

    例如:

    var arr = new Array();
    var date = new Date();
    var obj = new Object();
    其实javascript在ECMAScript5中还定义了一个方法来创建一个对象,Object.create(),参数可以是某个对象。

    例如:

    var o = Object.create({x:1});

    那么新创建的对象o的原型就是Object.create()中传入的参数,同时对象o也拥有了属性x。

    当然也可以创造一个普通的控对象,类似于var o = {}的效果,只需要在将参数改为Object.prototype即可,让create出来的对象的原型=Object.prototype,其实也就是Object的实例了。

    var o1 = Object.create(Object.prototype);
    var o2 = new Object;
    var o3 = {};

    从上图可以看到,这三种方法创建的对象是一样的,即一个最普通的Object对象。

    此外,还可以通过传入参数null来创建一个没有原型的新对象,这个功能是前两种方法所不具备的。

    var o4 = Object.create(null);

    这个新建的对象很可怜,他没有任何的原型,也就是说它连Object内置的方法都没有,不能toString(),valueOf等等。





  • 相关阅读:
    cytoscape-d3-force api
    Python基础编程 模块的引入与定义
    更改Ubuntu内核版本
    Jupyter Notebook默认路径修改
    YJZH 前端部署记录 CentOS+Nginx+Vue
    dotnet core webapi centos 服务自启动
    Linux修改时区
    空间数据实战(1)——MySQL
    记录window.sessionStorage的一个小坑
    ElementUI默认表单项el-form-item间距修改
  • 原文地址:https://www.cnblogs.com/hutaoer/p/3078888.html
Copyright © 2011-2022 走看看