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

jQuery的不足之處

使用Jquery有一段時間了,對Jquery輕便、易學易用、方便的DOM操作以及這個框架的設計思想都由衷的贊嘆。但是Jquery在設計過程中也有一些不合理的地方(當然,有些東西見仁見智,可能你并不覺得這不合理),今天看到了一篇文章,覺得寫的挺有道理的,我做了一下整理。并不是說Jquery很差,讓大家不要用,而是通過這些內容來更好的了解和使用jQuery。

1.each工具的回調函數參數的設計。

jQuery.each(obj,callback)

通用遍歷方法,可用于遍歷對象和數組。
不同于遍歷 jQuery 對象的 $().each() 方法,此方法可用于遍歷任何對象。回調函數擁有兩個參數:第一個為對象的成員或數組的索引,第二個為對應變量或內容。 如果需要退出 each 循環可使回調函數返回 false,其它返回值將被忽略。
很明顯,這個參數的設計不合理。應該將參數的順序對調。原因很簡單,通常做遍歷的時候,我們只需要獲取當前對應的變量或內容就可以了,大多數情況下是不需要索引的。如果索引參數在后面,在不使用的情況下就可以省略。也許你覺得我在雞蛋里面挑骨頭,你看看jQuery的另外一個工具的設計就清楚了:

jQuery.grep(array,callback,[invert])
這個工具是對對象和數組做遍歷用的,但是這個工具的callback函數的兩個參數中第一個為對應變量或內容,第二個為對象的成員或數組的索引。正好與jQuery.each相反。

2.this指針的變換

在jQuery中this指針的變換是非常頻繁的,可能稍不留神,就會出錯。特別是在OO編程的時候。例如:

function Dog(){
        this.name="旺財";
}

Dog.prototype.eat=function(){
        $("div").click(function(){
                  alert(this.name+"在啃骨頭");
         });
};

你會發現這段代碼并不會像你想象的那樣執行,因為this指針已經變換,指代的是當前的div對象,而不是Dog的實例。

3.jquery.inArray(value,array)工具的設計

就字面意思來說,這個函數應該返回true or false,事實上返回的是value在array第一次出現的位置。若不存在,返回-1。若你當作true或false來處理,就郁悶了,-1是true。

4.對OO的支持不夠

jquery的DOM操作的支持很好很強大,但在OO方面卻沒有做任何工作。而且,就jQuery的編碼風格也和OO有點格格不入。而其他框架如prototype,MooTools都有比較好的支持。

it知識庫jQuery的不足之處,轉載需保留來源!

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

主站蜘蛛池模板: 中文天堂www资源 | 红桃视频国产AV | 久久精品免费看网站 | 国产福利视频一区二区 | 91福利国产在线观看网站 | 最近中文字幕完整版免费高清 | 艳鉧动漫1~6全集观看在线 | 精品视频免费在线 | c了瑜伽老师嗷嗷叫一节课视频 | 国语精彩对白2021 | 欧美MV日韩MV国产网站 | 久久777国产线看观看精品卜 | 白银谷在线观看 | 国产精品久久自在自2021 | 日本工口生肉全彩大全 | 精品视频网站 | 高清撒尿hdtube撒尿 | 成人午夜精品无码区久久漫画日本 | 男人一生要读的书 | 国产囗交10p | 亚洲人成网站在线观看90影院 | 久cao在线香蕉 | 噜妇插内射精品 | 入室强伦女教师被学生 | 戳女人屁股流水羞羞漫画 | 二次元美女扒开内裤喷水 | 我年轻漂亮的继坶2中字在线播放 | 青青青久草 | 青青草原社区 | 18禁黄久久久AAA片 | 两个人的视频日本在线观看完整 | TIMI1TV天美传媒在线观看 | 日韩一区二区天海翼 | 亚洲中文字幕永久在线 | 父亲在线日本综艺免费观看全集 | china18一19 第一次 | 精品含羞草免费视频观看 | 18videosex性欧美黑色 | 精品久久久久久久99热 | 天天爽夜夜爽夜夜爽 | 最新国产麻豆精品 |