zoukankan      html  css  js  c++  java
  • js 语法

    读过一篇文章里面js面向对象的写法通过

    function New(aClass, aParams)    //通用创建函数
        {
            function new_()     //定义临时的中转函数壳
            {
                aClass.Create.apply(this, aParams);   //调用原型中定义的的构造函数,中转构造逻辑及构造参数
            };
            new_.prototype = aClass;    //准备中转原型对象
            return new new_();          //返回建立最终建立的对象
        };
    

     起到了构造函数的作用,但是直接用NEW()创建对象,感觉不像类,而且这样写的类的方法在编辑器时,不会自动提示,模仿下有了方法二。

    方法二:

    var Class = {
        create: function () {
            return function () {
                this.initialize.apply(this, arguments);
            }
        }
    }//模仿形成构造器函数的的效果
    
    var click_class = Class.create()//建立click_class类
    click_class.prototype = {
        initialize: function (name,obj) {
            this.name=name
            this.obj = $(obj)
        },//定义构造器函数
        pri: function () {
            alert(this.name+":"+this.obj.html())
        }//定义公共方法
    }
                var t = new click_class("sonny","p")
    $(".div").click(function () {
        t.obj=$(this)//js的特性覆盖对象类的属性
        t.pri()
    })
        
    

     demo:

  • 相关阅读:
    Golang的标准命令简述
    Golang的环境安装
    初识Golang编程语言
    基于Ambari的WebUI部署Hive服务
    基于Ambari Server部署HDP集群实战案例
    HBase shell常用命令总结
    HBase完全分布式集群搭建
    HBase工作原理概述
    面向对象-接口(interface)实战案例
    myBatis 简介
  • 原文地址:https://www.cnblogs.com/breakdown/p/2480756.html
Copyright © 2011-2022 走看看