zoukankan      html  css  js  c++  java
  • 原型与原型链

    //构造函数  函数名首字母大写
    function Foo(name, age){
        //this = {}
        this.name= name;
        this.age= age;
        this.class='class-1';
        //return this //默认有这一行
    }
    var f=new Foo('liujian',20);
    //var f1=new Foo('lisi',20); //创建多个对象
    
    //扩展
    /*
     var a={} => var a = new Object() 语法糖
     var a=[] => var a = new Array() 语法糖
     function Foo(){} => var Foo = new Funtion()
       使用instanceof判断函数是否是一个变量的构造函数
      
    */
    
    //原型规则
    /* 所有引用类型(数组,函数, 对象),都具有对象特性,即可自由扩展属性(除null)
     * 所有引用类型(数组,函数, 对象),都有一个_proto_属性(隐性原型),属性值是个普通的对象
     * 所有的函数,都有一个prototype属性(显式原型),属性值也是一个普通的对象
     * 所有引用类型(数组,函数, 对象), _proto_属性指向他的构造函数的'prototype'属性值
     * 
     * *当试图得到一个引用类型的某个属性时,如果这个对象本身没有这个属性,
     * 那么会去他的_proto_(即他的构造函数的prototype)中寻找
     * 
     * */
    
    //instanceof 用于判断引用类型属于哪个构造函数的方法
    //arr instanceof Array //true
    
    //new 一个对象过程
    /* 创建一个新对象
     * this指向这个新对象
     * 执行代码,即对this赋值
     * 返回this
     * */
    //zepto 设计和源码分析
    
    
    //原型继承  jq zepto基础原理
    
    function Elem(id){
        this.elem=document.getElementById(id);
    }
    
    Elem.prototype.html=function(val){
        var elem=this.elem;
        
        if (val) {
            elem.innerHTML=val    
            return this;
        }else{
            return elem.innerHTML
        }
    }
    
    Elem.prototype.on=function(type,fn){
        var elem=this.elem;
        elem.addEventListener(type,fn,false);
        return this
    }
    
    var div1=new Elem('div1');
    div1.html('我是内容!');
    div1.on('click',function(){
        var val=div1.html()
        alert(val)
    })
  • 相关阅读:
    【其他】UTF-8带签名与不带签名
    【Python】Python 过滤列表
    【EF】EF扩展库(批量操作)
    【python】用 sqlacodegen 将存在的数据库表 转化成model.py
    【python】使用枚举类
    【python】Python: Enum枚举的实现
    【python】python sqlalchemy core
    【python】python字符串前面加u,r,b的含义
    【EF】Entity Framework Core 2.0 特性介绍和使用指南
    Asp.Net 之 前台绑定常用总结
  • 原文地址:https://www.cnblogs.com/liujian9527/p/7338968.html
Copyright © 2011-2022 走看看