天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

犀利的js 函數集合

那么分享幾個理想狀態的js原型函數。大部分整理修改自月影的blog
另外推薦一下月影的書――"王者歸來",如果你每周js的coding時間大于5小時,還是值得一讀的。
1.函數膠水,有很多同學用jq用習慣了,有時就為一個類似于c#里的event+=delegate而用jq,似乎有點劃不來,這幾原型函數就夠了。
復制代碼 代碼如下:
Function.prototype.$concat = function(){
var funcs = [this].concat(Array.apply([], arguments));
return function(){
var ret = [];
for(var i = 0; i < funcs.length; i++){
var func = funcs[i] instanceof Function ? funcs[i] : new Function(funcs[i]);
ret.push(func.apply(this, arguments));
}
return ret;
}
}
//var concat = (function a(a){
// alert("a:"+a);
//}).$concat(function b(b){
// alert("b:"+b);
//});
//concat(1);

2.函數柯靈化,柯靈化是面向函數式語言的一個重要特性,和大部分人所持有的面向過程的編程思想區別很大,就我愚見,日常工作中,函數柯靈化除了能把一些代碼寫得優雅(或許還有詭異)以外,不是特別的"必要"。
復制代碼 代碼如下:
Function.prototype.$curry=function(){
with({that:this})
return function()
{
var args = Array.prototype.slice.call(arguments);
if(args.length<that.length)
{
return function(){
var _args = args.concat(Array.prototype.slice.call(arguments));
return that.$curry().apply(this,_args);
}
}
else return that.apply(this,args);
}
}
//var curry=(function f(a,b,c){
// alert([a,b,c]);
// }).$curry();
//curry(1)(2)(3);
//curry(1,2)(3);

3.對象閉包。這個詞是我造的,不過看一下注釋里的調用便可以理解,這個函數原本是為了證明with和閉包的等價性,但卻提供了一個極有價值的模式。
復制代碼 代碼如下:
Function.prototype.$bind=function(object){
var callback = function () {
return arguments[0];
}
with(object){
return eval('callback(' + this.toString() + ')');
}
}
//var obj = {a:1,b:2};
//var bind=(function (){
// a=10;
// b=11;
//}).$bind(obj);
//bind();
//alert(obj.a);

4. string.Format。怕是很多js coder都想有一個c#(Java類似)里的string.Format方法,其實一點也不麻煩。
復制代碼 代碼如下:
String.prototype.$format=function(){
var ret;
for(var i=1;i<arguments.length;i++){
var exp = new RegExp('//{' + (i-1) + '//}','gm');
ret = (ret||this).replace(exp,arguments[i-1]);
}
return ret;
}
//alert("{0},{1},{4}".$format(0,1,2));

以后有機會還會陸續分享一些這樣犀利的函數。暫且給些函數合計取個名字,就叫 p.js 吧。

JavaScript技術犀利的js 函數集合,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 亚洲99精品A片久久久久久 | jiapanese50欧美熟妇 | 亚洲综合日韩中文字幕v在线 | 黄小飞二人转 | 免费国产午夜理论不卡 | 手机在线观看无码日韩视频 | 久久伊人精品青青草原2021 | 日本夜爽爽一区二区三区 | 国内精品一级毛片免费看 | 一本道无码字幕在线看 | 亚洲精品无夜久久久久久久久 | 色综合久久88一加勒比 | 青青久在线视频免费观看 | 国产精品久久婷婷五月色 | 国产亚洲精品线视频在线 | 国产精品亚洲AV色欲在线观看 | 成人免费毛片观看 | 久久久久99精品成人片三人毛片 | 国产99久久久欧美黑人刘玥 | 夜夜精品视频一区二区 | 大香伊蕉在人线国产最新 | 国产免费怕怕免费视频观看 | 国产伦精品一区二区三区 | 被强J高H纯肉公交车啊 | 2020年国产精品午夜福利在线观看 | jk制服喷水| 久久精品热在线观看30 | 污文啊好棒棒啊好了 | 大肥婆丰满大肥奶bbw肥 | 国内精品偷拍在线观看 | 永久免费毛片 | 久久亚洲成a人片 | 久久欧洲视频 | sao虎影院桃红视频在线观看 | 青娱乐在线一区 | 美女脱了内裤张开腿让男人爽 | 美女张开让男生桶 | 69国产精品成人无码视频 | 日日夜夜撸 在线影院 | 教室眠催白丝美女校花 | 午夜国产精品影院在线观看 |