摘要:模塊化編程所謂模塊化編程,就是將代碼模塊化,每一塊代碼都只進行一種操作,可以這樣理解吧。將所有的重復(fù)的代碼都提取出來形成對象構(gòu)造函數(shù)等,在需要使用的時候,調(diào)用或者使用等進行操作。
模塊化編程
所謂模塊化編程,就是將代碼模塊化,每一塊代碼都只進行一種操作,可以這樣理解吧。
全局變量和局部變量的轉(zhuǎn)換模塊化編程重要的一點就是,在一個模塊里,所有的變量都是局部變量(對整個項目來說,對這個模塊來說當(dāng)然可以是全局變量了)
模塊化編程如何將全局變量轉(zhuǎn)變?yōu)榫植孔兞浚?/em>
把所有代碼都放在一個函數(shù)里面
再執(zhí)行這個函數(shù)
這樣除了這個函數(shù)是全局變量,其它都變成限制在這個函數(shù)里的局部變量了
我連那個函數(shù)這個全局變量都不想要了:
設(shè)置為匿名函數(shù)
立即執(zhí)行,直接call()
function(){ //your code }.call()
函數(shù)立即執(zhí)行的優(yōu)點:
沒有全局變量
而只有用函數(shù)才能有局部變量
不好意思,chrome不支持,的解決辦法:
前面加!表示這是個立即執(zhí)行函數(shù)。不過會對這個函數(shù)的返回值取反,不過立即執(zhí)行了就沒了,不關(guān)心它的返回值
!function(){ //your code }.call()
用()包起來。問題是如果前面有代碼,比如xxx(function(){}).call(),這就等于調(diào)用xxx了,等價于xxx().call()。。。function(){}只是傳入的參數(shù)
(function(){ //your code }).call()
把函數(shù)名設(shè)置成隨機數(shù)。機智(??????)??~~
MVCMVC是一種代碼整理的思路
Model:用來存儲數(shù)據(jù)相關(guān)的操作
View:用來存儲表現(xiàn)層的元素,用戶看的見的頁面上的元素
Controller:用來存儲各種行為、邏輯代碼
上面這張圖可以很好的展現(xiàn)M和V和C之間的互動關(guān)系。
首先,用戶只能接觸到V上的東西,就是頁面所展現(xiàn)的內(nèi)容
當(dāng)用戶和V開始交互了,一直在監(jiān)聽V的C會知道哪一個元素被動了,就會運行相應(yīng)的代碼
通常情況下,C會調(diào)用M,這個時候,M就會向服務(wù)器server發(fā)送請求要數(shù)據(jù),server自然會返回一個響應(yīng)
獲得響應(yīng)的M將數(shù)據(jù)返回給C,C再將數(shù)據(jù)更新在V上,就是再頁面上更新
面向?qū)ο缶幊?/b>愚見:深度模塊化。將所有的重復(fù)的代碼都提取出來形成對象、構(gòu)造函數(shù)等,在需要使用的時候,調(diào)用或者使用new等進行操作。
this的幾個小例子button.onclick=function(){ console.log(this); }
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/98353.html
摘要:面向?qū)ο笕筇卣骼^承性多態(tài)性封裝性接口。第五階段封裝一個屬于自己的框架框架封裝基礎(chǔ)事件流冒泡捕獲事件對象事件框架選擇框架。核心模塊和對象全局對象,,,事件驅(qū)動,事件發(fā)射器加密解密,路徑操作,序列化和反序列化文件流操作服務(wù)端與客戶端。 第一階段: HTML+CSS:HTML進階、CSS進階、div+css布局、HTML+css整站開發(fā)、 JavaScript基礎(chǔ):Js基礎(chǔ)教程、js內(nèi)置對...
摘要:面向?qū)ο笕筇卣骼^承性多態(tài)性封裝性接口。第五階段封裝一個屬于自己的框架框架封裝基礎(chǔ)事件流冒泡捕獲事件對象事件框架選擇框架。核心模塊和對象全局對象,,,事件驅(qū)動,事件發(fā)射器加密解密,路徑操作,序列化和反序列化文件流操作服務(wù)端與客戶端。 第一階段: HTML+CSS:HTML進階、CSS進階、div+css布局、HTML+css整站開發(fā)、 JavaScript基礎(chǔ):Js基礎(chǔ)教程、js內(nèi)置對...
摘要:模塊負責(zé)的所有面向切面的功能。總結(jié)的統(tǒng)一管理,降低了對象之間的耦合對主流的框架提供了很好的集成支持提供眾多組件,事務(wù)管理,等具有高度可開放性,開發(fā)者可以自由選擇部分或全部主要使用工廠模式和代理模式。 聊完了Spring框架中最重要的兩種設(shè)計模式,我們來看一下Spring框架的模塊和結(jié)構(gòu)圖。 Spring框架的結(jié)構(gòu) 下圖是Spring官方給出的Spring框架的結(jié)構(gòu)圖。 showImg(...
摘要:傳統(tǒng)的代碼中,在類中調(diào)用其他對象,都是自己出來一個對象,然后調(diào)用,這樣代碼的耦合度就比較高。日志對象和主程序的耦合度降到最低,即使更改日志對象的操作,主程序不受影響。 SSM框架網(wǎng)站后臺搭建(一) 1.所用技術(shù)簡單介紹 1.SSM中的S:Spring Spring在百度詞條上的解釋是: Spring是一個開放源代碼的設(shè)計層面框架,他解決的是業(yè)務(wù)邏輯層和其他各層的松耦合問題,因此它將面向...
閱讀 2820·2023-04-25 15:01
閱讀 3080·2021-11-23 10:07
閱讀 3367·2021-10-12 10:12
閱讀 3458·2021-08-30 09:45
閱讀 2196·2021-08-20 09:36
閱讀 3587·2019-08-30 12:59
閱讀 2436·2019-08-26 13:52
閱讀 934·2019-08-26 13:24