博客專欄

        EEPW首頁 > 博客 > 扣丁學堂Java培訓之JS面向對象代碼分享

        扣丁學堂Java培訓之JS面向對象代碼分享

        發(fā)布人:扣丁客 時間:2020-12-15 來源:工程師 發(fā)布文章

        不管學習哪門開發(fā)語言,總的目的都是為了用代碼變現(xiàn)出來,今天就直接貼一段js面向對象的代碼,供大家學習。

        <scripttype="text/javascript">
        
        //創(chuàng)建箱子類
        
        functionBox(option){
        
        varself=this;
        
        var_option={
        
        height:12,
        
        width:12
        
        };
        
        //合并參數(shù)對象:記得引用Jquery.js
        
        $.extend(_option,option);
        
        this.height=_option.height;
        
        this.width=_option.height;
        
        //綁定事件列表
        
        var_events={};
        
        //創(chuàng)建一個方法,并帶有回調函數(shù)
        
        this.push=function(option,callback){
        
        if(option.height>this.height){
        
        console.error("overheight",this);
        
        return;
        
        }
        
        if(option.width>this.width){
        
        console.error("overwidth",this);
        
        return;
        
        }
        
        //判斷是否有回調函數(shù)
        
        if(callbackinstanceofFunction)
        
        //調用回調函數(shù),并給它傳值(參數(shù):_option)
        
        callback.call(this,_option);
        
        }
        
        //綁定事件
        
        this.on=function(name,event){
        
        if(name==null||!name)
        
        returnnull;
        
        if(!(eventinstanceofFunction))
        
        if(self[name]instanceofFunction){
        
        returnself[name]();
        
        }
        
        if(eventinstanceofFunction)
        
        _events[name]=self[name]=function(){
        
        event.apply(this);
        
        returnthis;
        
        }
        
        }
        
        //解除綁定事件
        
        this.unbind=function(name){
        
        deleteself[name];
        
        delete_events[name];
        
        //鏈式表達式
        
        returnthis;
        
        }
        
        }
        
        //創(chuàng)建box1對象
        
        varbox1=newBox();
        
        //創(chuàng)建box2對象
        
        varbox2=newBox();
        
        //調用方法
        
        box1.push({
        
        height:12,
        
        width:12
        
        //回調函數(shù)
        
        },function(option){
        
        console.log("push回調函數(shù)已調用..",option);
        
        });
        
        //動態(tài)給對象綁定事件
        
        box1.on("click",function(){
        
        this.width+=10;
        
        console.log("width遞增10,click事件被調用..",this.width);
        
        });
        
        box1.on("heihei",function(){
        
        console.log("heihei事件被調用..",this.width);
        
        });
        
        //事件普通調用
        
        box1.click();
        
        //鏈式表達式調用方法
        
        box1.on("click").click().heihei().on("heihei");
        
        //打印box1的寬度
        
        console.log(box1.width);
        
        //打印box2的寬度
        
        console.log(box2.width);
        
        //解除綁定事件
        
        box1.unbind("heihei");
        
        //測試解除
        
        box1.heihei();
        
        </scrip

        以上就是JS面向對象代碼的詳細分析,通過以上代碼的學習,是否對Java編程的學習更加感興趣了呢?我們不僅有Java編程學習的培訓,還有其他十幾種編程語言,線上線下相結合的方式進行授課學習,課堂隨堂指導,課后項目老師輔導學習,手把手的教學方式,你還在等什么呢?趕快加入扣丁學堂java技術交流群:487098661。微 信 號:codingbb

        *博客內容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權請聯(lián)系工作人員刪除。



        關鍵詞:

        相關推薦

        技術專區(qū)

        關閉
        主站蜘蛛池模板: 陈巴尔虎旗| 江西省| 上思县| 合江县| 大渡口区| 华亭县| 婺源县| 洱源县| 连云港市| 宁城县| 邯郸市| 乐清市| 农安县| 龙海市| 罗源县| 南康市| 本溪市| 栖霞市| 绥芬河市| 龙海市| 鄂温| 噶尔县| 华宁县| 汤阴县| 峨山| 大冶市| 新和县| 陇西县| 霍邱县| 安岳县| 阿巴嘎旗| 乌兰察布市| 云南省| 沁水县| 新蔡县| 黎平县| 三原县| 洛隆县| 健康| 广西| 稷山县|