js 中prototype運用(數組)

来源:https://www.cnblogs.com/Byme/archive/2018/01/03/8184990.html
-Advertisement-
Play Games

轉自:http://www.cnblogs.com/chiname/articles/216517.html(侵刪) /* * 方法:Array.removeAt(Index) * 功能:刪除數組元素. * 參數:Index刪除元素的下標. * 返回:在原數組上修改數組 */ /* * 方法:Arr ...


轉自:http://www.cnblogs.com/chiname/articles/216517.html(侵刪)


 /* 
  *  方法:Array.removeAt(Index) 
  *  功能:刪除數組元素. 
  *  參數:Index刪除元素的下標. 
  *  返回:在原數組上修改數組 
  */ 
  

Array.prototype.removeAt = function(Index) {
    if (isNaN(Index) || Index > this.length) {
        return false; }
    for (var i = 0, n = 0; i < this.length; i++) {
        if (this[i] != this[Index]) {
            this[n++] = this[i]
        }
    }
    this.length -= 1
}

  /*                             
  *  方法:Array.remove(obj)      
  *  功能:刪除數組元素.         
  *  參數:要刪除的對象.     
  *  返回:在原數組上修改數組    
  */   

 Array.prototype.remove = function(obj) {
     if (null == obj) {
         return; }
     for (var i = 0, n = 0; i < this.length; i++) {
         if (this[i] != obj) {
             this[n++] = this[i];
         }
     }
     this.length -= 1
 }

 

 /*                             
  *  方法:Array.Contains(obj)      
  *  功能:確定某個元素是否在數組中.         
  *  參數:要查找的Object對象 
  *  返回:找到返回true,否則返回false; 
  */    

 Array.prototype.Contains = function(obj) {
     if (null == obj) {
         return; }
     for (var i = 0, n = 0; i < this.length; i++) {
         if (this[i] != obj) {
             return true;
         }
     }

     return false;
 }

 

 /*                             
  *  方法:Array.IndexOf(obj)      
  *  功能:搜索指定的Object,並返回第一個匹配項從零開始的索引         
  *  參數:要查找的Object對象    
  *  返回:找到返回該元素在數組中的索引,否則返回-1 
  */  

 Array.prototype.IndexOf = function(obj) {
     if (null == obj) {
         return; } {
         for (var i = 0, n = 0; i < this.length; i++) {
             if (this[i] == obj) {
                 return i;
             }
         }
     }

     return -1;
 }

 

 /*                             
  *  方法:Array.Clear()      
  *  功能:消空數組元素.         
  *  參數:無.     
  *  返回:空數組 
  */ 

 Array.prototype.Clear = function() {
     this.length = 0;
 }

 /*                             
  *  方法:Array.formatString()      
  *  功能:返回數組位置.         
  *  參數:無.     
  *  返回:字元串
  */ 

Array.prototype.formatString = function() {
    var str = '';
    for (var i = 0; i < this.length; i++) {
        if(i == this.length -1){
            str += this[i];
        }else {
            str += this[i] + ';';
        }
    }
    return str;
};

  

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 開篇三問 1. AJAX請求真的不安全麽? 2. AJAX請求哪裡不安全? 3. 怎麼樣讓AJAX請求更安全? 前言 本文包含的內容較多,包括AJAX,CORS,XSS,CSRF等內容,要完整的看完並理解需要付出一定的時間。 另外,見解有限,如有描述不當之處,請幫忙及時指出。 __正文開始...__ ...
  • [1]數據結構 [2]圖的表示 [3]創建Graph類 [4]圖的遍歷 [5]最短路徑演算法 [6]最小生成樹 ...
  • 選擇器實例選取 * $("*") 所有元素 #id $("#lastname") id="lastname" 的元素 .class $(".intro") class="intro" 的所有元素 .class,.class $(".intro,.demo") class 為 "intro" 或 "d ...
  • [1]數據結構 [2]二叉樹 [3]樹的遍歷 [4]樹的搜索 [5]自平衡樹 ...
  • 本文寫給有一定Promise使用經驗的人,如果你還沒有使用過Promise,這篇文章可能不適合你,建議先瞭解Promise的使用 Promise標準解讀 1.只有一個then方法,沒有catch,race,all等方法,甚至沒有構造函數 Promise標準中僅指定了Promise對象的then方法的 ...
  • 在使用Promise處理一些複雜邏輯的過程中,我們有時候會想要在發生某種錯誤後就停止執行Promise鏈後面所有的代碼。 然而Promise本身並沒有提供這樣的功能,一個操作,要麼成功,要麼失敗,要麼跳轉到then里,要麼跳轉到catch里。 如果非要處理這種邏輯,一般的想法是拋出一個特殊的Erro ...
  • 最近在逛各大網站,論壇,以及像SegmentFault等編程問答社區,發現Vue.js異常火爆,重覆性的提問和內容也很多,樓主自己也趁著這個大前端的熱潮,著手學習了一段時間的Vue.js,目前用它正在做自己的結業項目。 在做的過程中也對Vue.js的官方文檔以及其各種特性有了許多認識。作為一個之前以 ...
  • margin和padding的區別和用法 什麼是margin、padding? marigin:就是外邊距。padding:就是內邊距。怎麼就容易記住兩者呢? 馬蓉大家都知道吧,給王寶強帶帽子的那位,假如你認識了馬蓉是不是想離他遠點呢?而馬蓉的拼音是marong,是不是和margin特別像呢?那麼你 ...
一周排行
    -Advertisement-
    Play Games
  • 前言 本文介紹一款使用 C# 與 WPF 開發的音頻播放器,其界面簡潔大方,操作體驗流暢。該播放器支持多種音頻格式(如 MP4、WMA、OGG、FLAC 等),並具備標記、實時歌詞顯示等功能。 另外,還支持換膚及多語言(中英文)切換。核心音頻處理採用 FFmpeg 組件,獲得了廣泛認可,目前 Git ...
  • OAuth2.0授權驗證-gitee授權碼模式 本文主要介紹如何筆者自己是如何使用gitee提供的OAuth2.0協議完成授權驗證並登錄到自己的系統,完整模式如圖 1、創建應用 打開gitee個人中心->第三方應用->創建應用 創建應用後在我的應用界面,查看已創建應用的Client ID和Clien ...
  • 解決了這個問題:《winForm下,fastReport.net 從.net framework 升級到.net5遇到的錯誤“Operation is not supported on this platform.”》 本文內容轉載自:https://www.fcnsoft.com/Home/Sho ...
  • 國內文章 WPF 從裸 Win 32 的 WM_Pointer 消息獲取觸摸點繪製筆跡 https://www.cnblogs.com/lindexi/p/18390983 本文將告訴大家如何在 WPF 裡面,接收裸 Win 32 的 WM_Pointer 消息,從消息裡面獲取觸摸點信息,使用觸摸點 ...
  • 前言 給大家推薦一個專為新零售快消行業打造了一套高效的進銷存管理系統。 系統不僅具備強大的庫存管理功能,還集成了高性能的輕量級 POS 解決方案,確保頁面載入速度極快,提供良好的用戶體驗。 項目介紹 Dorisoy.POS 是一款基於 .NET 7 和 Angular 4 開發的新零售快消進銷存管理 ...
  • ABP CLI常用的代碼分享 一、確保環境配置正確 安裝.NET CLI: ABP CLI是基於.NET Core或.NET 5/6/7等更高版本構建的,因此首先需要在你的開發環境中安裝.NET CLI。這可以通過訪問Microsoft官網下載並安裝相應版本的.NET SDK來實現。 安裝ABP ...
  • 問題 問題是這樣的:第三方的webapi,需要先調用登陸介面獲取Cookie,訪問其它介面時攜帶Cookie信息。 但使用HttpClient類調用登陸介面,返回的Headers中沒有找到Cookie信息。 分析 首先,使用Postman測試該登陸介面,正常返回Cookie信息,說明是HttpCli ...
  • 國內文章 關於.NET在中國為什麼工資低的分析 https://www.cnblogs.com/thinkingmore/p/18406244 .NET在中國開發者的薪資偏低,主要因市場需求、技術棧選擇和企業文化等因素所致。歷史上,.NET曾因微軟的閉源策略發展受限,儘管後來推出了跨平臺的.NET ...
  • 在WPF開發應用中,動畫不僅可以引起用戶的註意與興趣,而且還使軟體更加便於使用。前面幾篇文章講解了畫筆(Brush),形狀(Shape),幾何圖形(Geometry),變換(Transform)等相關內容,今天繼續講解動畫相關內容和知識點,僅供學習分享使用,如有不足之處,還請指正。 ...
  • 什麼是委托? 委托可以說是把一個方法代入另一個方法執行,相當於指向函數的指針;事件就相當於保存委托的數組; 1.實例化委托的方式: 方式1:通過new創建實例: public delegate void ShowDelegate(); 或者 public delegate string ShowDe ...