最近由於種種原因,有點心煩,也有點浮躁。
varbind
=function
(func, obj) , args.concat(array.prototype.slice.call(arguments)));};}
我們可以嘗試著以下的test:
varf
=function
(i) , person =;
(f =
bind(f, person, 'i
'))()
// output: i am 岑安
這是一種很常見的事件繫結的思路,相信很多同學都已經見怪不怪了,函式可以作為乙個方法繫結到指定object上,使其表達更有語義。那麼接下來:
varslice
=array.prototype.slice,
compose
=function
() return
args[0];
};};
varsayhi
=function
(name);
varsaylove
=function
(name);
varsayto
=compose(sayhi, saylove);
sayto('岑安
'); //hi, i love 岑安
這個簡單的測試變得好玩起來,函式被有機的組合起來,成了乙個新的函式,有了新的功能。
這就意味著,如果遵從這個思路一直下去的話,那麼, 我們可以通過一定形式的基元,組合出不同功能的方法。這有點類似於css中的分離。當分離到極致的時候,任何頁面的css檔案都可以共用,因為你的css 樣式表中,乙個類就乙個屬性,在html**裡通過樣式類的組合達到想要的樣式。(但是事情一般做到極化了,也就離愚蠢不遠了)
至於curry和methodize以及類似的函式包裝和組合器,或許嘗試一下,會愛上它。
偶爾想起 有誰可以回答我?
很長時間不寫日記了,不是不想寫了,也不是懶的寫了,總說自己很忙,也不知道自己到底在忙些什麼,漸漸的就這樣麻木了。乙個人總要走陌生的路,看陌生的風景,聽陌生的歌,然後在某個不經意的瞬間,你會發現,原本費盡心機想要忘記的事情真的就這麼忘記了。為什麼每個人都喜歡不切實際的活著,不切實際?到底怎樣才是符合實...
我的PE了解
一 什麼是pe檔案。pe portable executable 格式,是微軟win32環境可移植可執行檔案 如exe dll vxd sys和vdm等 的標準檔案格式。二 pe檔案格式 2.1rva va和offset轉換和理解 offset 就是010editor以 0x00 開始的檔案中的位置...
我所了解的cgi
對於cgi,一開始我並沒有理解,一些概念性的東西,常常使我陷入咬文嚼字的陷阱裡。我希望找到乙個通俗易懂的案例,下面這段資料我個人覺得講得非常清楚 最早的web伺服器簡單地響應瀏覽器發來的http請求,並將儲存在伺服器上的html檔案返回給瀏覽器,也就是靜態html。事物總是不斷發展,也越來越複雜,所...