AMD使用總結

2021-08-28 21:24:37 字數 716 閱讀 1467

//定義m模組,本申明乙個全域性變數

define('m',,function();

return m;

})//定義模組a 依賴模組 m,b,c

define('a',['m','b','c'],function(m))

//定義b模組

define('b',,function())

//定義c模組

define('c',,function())

//引入a模組

require(['a'],function(a))

此例子裡邊需要注意:

m模組的作用是定義乙個全域性的變數;

a模組依賴了其他模組,但是function 引數缺只有m乙個引數,但是也可以用使用b,c兩個模組裡邊的變數,這是因為 m 模組裡邊的全域性變數。可以看得出 b,c模組裡邊的變數在申明的時候就是掛在全域性變數下的。所以a模組依賴了b,c模組缺沒有使用引數介面,也可以用的原因。

反之,變數沒有掛在全域性變數下,引用了模組,沒有用引數接受,這樣是不可以使用其他模組下邊的變數和方法的,因為很簡單是作用局的問題。

還有就是b,c模組沒有引用m模組缺使用了,m模組下邊的變數,也是因為此變數是全域性變數。如果是區域性變數,那就要依賴於m模組才可以使用了。

假如說,反正b,c兩個模組也不用參加接收,都掛在了全域性變數下邊,是不是不引也可以,直接引乙個m模組好了。這肯定是不行的,會彈出 undefined

實現AMD規範

廢話不說,直接上 由於require依賴程式時要取模組依賴,所以所有的依賴應該有乙個共同的載體,也就是物件,可以通過物件訪問到這些依賴 let factories function define mod,dependences,factory function require mods,callba...

AMD面試小結

關於git如何使用 關於gdb除錯如何使用 關於多執行緒程式設計 關於使用者態和核心態?關於opengl 關於voiltale你用過沒?volatile表示物件的值可能在程式的控制或檢測之外被改變,並告訴編譯器不應該對這樣的物件進行優化。voilatile起到對型別額外修飾的作用。class tes...

AMD主機板分類

amd 主機板根據cpu插槽分類 am2 am2 940針 但早期有少量面向oem的socket 939介面版本 am3 am3 938針 am4 1331針 am2插槽的主機板可以插am3介面的cpu。但am3插槽不可以插am2的cpu am2是 940的針腳,am3是938的針腳,所以am3的c...