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:

  • 相关阅读:
    梦断代码,读书计划
    《梦断代码》读后感1
    四则运算2详细过程
    四则运算2初步构思
    四则运算
    阅读《梦断代码》计划
    四则运算2设计思路
    随机输出30道四则运算题
    软件工程阅读计划
    面试题04
  • 原文地址:https://www.cnblogs.com/breakdown/p/2480756.html
Copyright © 2011-2022 走看看