今天閒來無事,給大家說說匿名函式的用處
1.匿名函式用()包住
緊跟著用();實現(或者說編譯)
例項如下:
(function ()//使用匿名函式來隱藏全域性變數
;這裡的msg只能在內部訪問
在外部是不能訪問的,我們看到了其實js也有訪問許可權的
只是需要我們用特殊的方法來處理,大家可以試著在外面呼叫msg這個變數
驗證其訪問許可權
2. 我曾經試過動態給元素新增物件
例如:var obj=document.getelementbyid("test") .getelementsbytagname("li");
obj是三個li的集合物件
。。。。。。
你實現了嗎?如果沒有實現看看下面的**
var obj=document.getelementbyid("main");//匿名函式解決函式只能引用外部迴圈變數的最後值問題
var items=["click","keydown"];
for(var i=0;i這問題其實我也不大懂什麼原因,對js 的機制還是不很了解
不過 我希望大家能記住這個問題 以及解決這個問題的方法
按照上面**的注釋:去掉帶有#的三行**
會發現並不能達到我們預期的效果
就是說,迴圈的變數i我們在
function(){
alert("thanks"+item);
裡面是訪問不到的 ,只能訪問到最後的那個i值
用了匿名函式以後,問題解決了
注:閉包意味著記憶體函式可以引用存在於包圍它的外圍函式的變數,即使外層函式的執行已經終止,使用閉包的時候會遇到乙個問題。
閉包允許你引用父函式(就是包含它的外圍函式)內的變數,但提供的值並非該變數建立的值
而是在父函式範圍內最終的值
呵呵 匿名函式的用處大家了解一二了吧
js很深奧,有很多我們未知的秘密,需要我們去探尋
這也是我為什麼這麼喜歡它的原因
希望大家也能喜歡上它
----------和你們一起進步,和你們一起成長
委託的用處及匿名函式(lamda表示式)
當你需要把乙個方法傳送給其他方法時,可以考慮使用委託。好像不是很好理解,也可以這樣說,當你確定要處理一件事,但又不能確定處理方法時,可以考慮用委託。其實單獨的說委託的應用好像有點牽強,委託更多的是在事件中的應用。using system using system.collections.generi...
umask函式的用處
include sys types.h include sys stat.h mode t umask mode t cmask umask函式為程序設定檔案方式建立遮蔽字。unix中檔案最大訪問許可權是0777,即 rwxrwxrwx.如果講umask函式設定為0111,那麼預設建立檔案的許可權就...
函式 匿名函式
匿名函式 沒有名稱的函式。匿名函式的使用 1 將其賦值給乙個函式 var show function show 2.匿名函式的自我執行 function hi 函式 無參,有參,帶返回值 帶有返回值的函式 var num function a,b 10,9 consloge.log num 例子 v...