日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

Java程序猿的JavaScript学习笔记(10—— jQuery-在“类”层面扩展)

發布時間:2025/4/9 javascript 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java程序猿的JavaScript学习笔记(10—— jQuery-在“类”层面扩展) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
計劃按例如以下順序完畢這篇筆記:
  • Java程序猿的JavaScript學習筆記(1——理念)
  • Java程序猿的JavaScript學習筆記(2——屬性復制和繼承)
  • Java程序猿的JavaScript學習筆記(3——this/call/apply)
  • Java程序猿的JavaScript學習筆記(4——this/閉包/getter/setter)
  • Java程序猿的JavaScript學習筆記(5——prototype)
  • Java程序猿的JavaScript學習筆記(6——面向對象模擬)
  • Java程序猿的JavaScript學習筆記(7——jQuery基本機制)
  • Java程序猿的JavaScript學習筆記(8——jQuery選擇器)
  • Java程序猿的JavaScript學習筆記(9——jQuery工具方法)
  • Java程序猿的JavaScript學習筆記(10——jQuery-在“類”層面擴展)
  • Java程序猿的JavaScript學習筆記(11——jQuery-在“對象”層面擴展)
  • Java程序猿的JavaScript學習筆記(12——jQuery-擴展選擇器)
  • Java程序猿的JavaScript學習筆記(13——jQuery UI)
  • Java程序猿的JavaScript學習筆記(14——擴展jQuery UI)

  • 這是筆記的第10篇,我們考慮怎樣從有用角度,從“類”的角度對家Query進行擴展。



    jQuery是一個緊湊的框架,專注解決最核心的問題,沒有追求大而全,全部擴展機制對jQuery來說,至關重要。
    JavaScript以函數為基礎,今天我們試圖基于jQuery構建一個針對自己項目的函數庫,每一個函數實現特定的功能,同一時候對這些函數進行有效的組織。




    作者博客:http://blog.csdn.net/stationxp

    作者微博:http://weibo.com/liuhailong2008

    轉載請取得作者允許


    1、目標

    通過$調用我們的函數庫。函數庫依照功用分級組織。效果例如以下:
    $.util.parseDate
    $.util.parseDecimal
    $.page.event.init

    2、方法

    上一篇我們了解到。通過jQuery.extend()能夠方便地對jQuery進行擴展,甚至能覆蓋extend本身。
    jQuery.extend()支持下面幾種函數簽名:
    jQuery.extend(obj);
    jQuery.extend(isDeep,obj);
    jQuery.extend(target,src1,src2,...);
    jQuery.extend(isDeep,target,src1,src2,...);
    我們能夠extend源碼的基礎上改動,并覆蓋原來的extend,這樣改動一個可能被廣泛使用的函數,改動了其它人對輸入參數的預期,是不合適的,可能會誤導其它人。輸入了錯誤的參數,帶來錯誤隱患。

    我們又一次定義一個方法。例如以下:
    jQuery.extend({ns_extend : function(){var ns, nss, target, i, src, length ;length = arguments.length;if(length>1){ns = arguments[0]; i = 1;} else { i = 0;}if(!( src = arguments[i] ) || !jQuery.isPlainObject( src ) ){return ;}target = this;if(ns){nss = ns.split('.'); // TODO 這里須要做好多字符過濾處理for( var idx = 0; idx < nss.length ; ++idx ){ns = nss[idx];// ns 的語義改變了,原來的語義使命結束,這里用作暫時變量ns = jQuery.trim(ns);if(ns){target[ns] = target[ns] || {};target = target[ns];}}}for( ; i < length ; ++i ){src = arguments[i];jQuery.extend( target, src );}} });jQuery.ns_extend('pet',{miao : function(){alert('i am a cat');} });jQuery.ns_extend('my.fav.pet',{wangwang : function(){alert('i am a dog');} });$.pet.miao();$.my.fav.pet.wangwang();
    目的達成。

    轉載于:https://www.cnblogs.com/claireyuancy/p/6742283.html

    總結

    以上是生活随笔為你收集整理的Java程序猿的JavaScript学习笔记(10—— jQuery-在“类”层面扩展)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。