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

JavaScript對象鏈式操作代碼(jquery)

雖然現在慢慢減少了對jQuery的使用(項目上還是用,效率高點。平時基本不用了),希望從而減少對jQuery的依賴度。
但是這鏈式操作的方式實在吸引人(貌似現在不少新庫都采用了鏈式操作)。
新手無畏嘛,所以寫了以下代碼。主要是避免以后又忘了,呵呵。
復制代碼 代碼如下:
window.k = function() {
return new k.fn.init(arguments);
}
k.fn = k.prototype = {
init:function() {
this.length = 0;
//var args = Array.prototype.slice.call(arguments,0);
Array.prototype.push.apply(this,arguments[0]);
return this;
},
show:function() {
console.log(Array.prototype.slice.call(this,0).join("$"));
return this;
},
hide:function() {
console.log(this);
return this;
}
}
k.fn.init.prototype = k.fn;
console.log(k("0",1,2,3,4,5).show().hide());

這只是進行了鏈式操作。但是在firbug下可以看到jQuery對象返回的是數組/類數組。要實現這個卻不知道怎么辦好。。
總不能讓k.fn.prototype = new Array()吧。真要看jQuery源代碼還真是有點累。。
下面是針對網友的一些回復
其實鏈式操作很簡單,就是每次返回操作對象本身,這樣就可以持續的調用該對象本身定義的所有方法了。
最簡單的例子:
復制代碼 代碼如下:
var o = function() {
/**
do something
*/
return this;
}
o.prototype = {
action1: function() {
/**
do something
*/
return this;
},
action2: function() {
/**
do something
*/
return this;
}
}

你可以這樣調用:
new o() //
.action1() //
.action2(); //每一步操作返回的都是實例化的o對象
它其實等同于這樣:
var a = new o();//如果沒有返回this,那么就不能在這里繼續調用了。因為返回的是undefined。
a.action1(); //這個時候就只能對a(實例化的o對象的引用)來操作。
a.action2();
如果你用過jQuery就應該發現了。jQuery并不需要你使用new來實例化一個對象,在使用的時候顯得更方便。
所以我們定義另一個對象來封裝上面提到的o對象:
var k = function() {
return new o();
}
這樣我們就可以這樣調用了:
k().action1().action2();
我為你推薦 一個叫 "函數化"的 構造JS的方法。
復制代碼 代碼如下:
//加粗表示強調
//這個方法是 《Javascript語言精粹》第52頁 5.4函數化 上的。
var constructor = function (spec,my){
var that,其他的私有實例變量;
my = my || {};
把共享的變量和函數添加到my中
that = 一個新對象
添加給that 的特權方法
return that;
}

JavaScript技術JavaScript對象鏈式操作代碼(jquery),轉載需保留來源!

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

主站蜘蛛池模板: 囚禁固定在调教椅上扩张H 秋霞最新高清无码鲁丝片 秋霞在线看片无码免费 | 国产99久久九九精品无码不卡 | 小夫妻天天恶战 | 国产成人99久久亚洲综合精品 | 99视频精品全部免费 在线 | seba51久久精品 | 国产成人无码视频一区二区三区 | 国产毛片AV久久久久精品 | 亚洲蜜芽在线观看精品一区 | 俄罗斯aaaaa一级毛片 | 啊好深啊别拔就射在里面 | 日本不卡不码高清免费 | 欧美美女性生活 | yellow免费观看完整版直播 | 窝窝色资源站 | 草莓视频在线播放视频 | 丰满女朋友在线观看中文 | 亚洲性无码AV久久成人 | 国产午夜精品久久理论片小说 | 国内精品久久影视免费 | 6080yy奇领电影在线看 | 男人边吃奶边挵进去呻吟漫画 | 翁熄性放纵交换300章 | 7777色鬼xxxx欧美色夫 | 纯肉高H放荡受BL文库 | 国产睡熟迷奷系列精品 | 野花香在线观看免费观看大全动漫 | 免费在线看视频 | yy4408午夜场理论片 | 无码丰满人妻熟妇区 | 成片在线看一区二区草莓 | 国产成人综合网在线观看 | 中文字幕日本久久2019 | 久久青草热热在线精品 | a免费在线观看视频 | 国产精人妻无码一区麻豆 | 国产在线一区二区AV视频 | 国产精品久久久久久久AV下载 | 超碰97免费人妻 | 国产亚洲精品久久久999蜜臀 | 精品丰满人妻无套内射 |