zoukankan      html  css  js  c++  java
  • [设计模式]创建对象的方式

    可以通过对象直接量、关键字new和(E5)Object.create()函数来创建对象

    1. 对象直接量

    由若干名/值对组成的映射表

    属性名可以是JS标识符也可以是字符串直接量(包括空空字符串)

    属性值可以是任意类型的JS表达式,表达式的值(原始值也可以是对象值)就是这个属性的值

    2. 通过new创建对象

    3. 原型

    每一个对象都从原型继承属性。

    没有原型的对象:Object.prototype

    创建对象

    原型

    对象直接量创建对象

    Object.prototype

    通过new创建对象

    构造函数的prototype属性

    通过Object.create()创建对象

    使用第一个参数

    4. Object.create()

    创建一个新对象,其中第一个参数是这个创建对象的原型。第二个可选参数,用以对对象的属性进行进一步描述。

    Object.create(null);     //不继承任何属性和方法

    Object.create(Object.prototype);   //和{}、new Object()一样

    //返回了一个继承自原型对象p的属性的新对象
    function inherit(p) {
        if(p==null) throw TypeError();    //p是一个对象,但不能是null
        if(Object.create) {                //如果Object.create属性存在
            return Object.create(p);
        }
        var type = typeof p;            //否则进行进一步检测
        if(type !== 'object' && t !== 'function')    throw TypeError();
        function f() {}                    //定义一个空构造函数
        f.prototype = p;                //继承对象p的属性
        return new f();                    //返回p的子对象f(继承对象)
    }
  • 相关阅读:
    alertify、js、css 使用简介
    html 跳转页面,同时跳转到一个指定的位置
    java 解析 json 遍历未知key
    JSON 字符串 与 java 对象的转换
    iOS安全系列之 HTTPS 进阶
    iOS安全系列之 HTTPS
    iOS-socket
    他人整理开源组件列表
    iOS Layout机制相关方法
    在写一个iOS应用之前必须做的7件事(附相关资源)
  • 原文地址:https://www.cnblogs.com/mackxu/p/2936185.html
Copyright © 2011-2022 走看看