<font id="zqva1"></font>
<rt id="zqva1"></rt>
  • <tt id="zqva1"></tt>
    <cite id="zqva1"></cite>

    <cite id="zqva1"><noscript id="zqva1"></noscript></cite>
      <rp id="zqva1"><meter id="zqva1"></meter></rp>

        <cite id="zqva1"></cite>
          <b id="zqva1"></b>
          <rp id="zqva1"></rp>
          <cite id="zqva1"></cite>

          <rt id="zqva1"></rt>

        1. <rp id="zqva1"></rp>

          js中循環總結,多種循環遍歷的實現介紹(while,for,map,foreach等)

          時間:?2017-10-31閱讀:?2531標簽:?遍歷

          循環是所有語言最基礎的語法,這篇文章將總結javascript的多種實現循環的方法,希望對大家能有一定的學習和幫助。

          while循環

          while 語句可以在某個條件表達式為真的前提下,循環執行指定的一段代碼,直到那個表達式不為真時結束循環。

          var i = 0;
          while (i < 3) {
            i++;
            console.log(i);//輸出1,2,3.
          }
          //當i=3的時候跳出,循環了3次
          do...while循環

          do...while循環至少迭代一次,當while的條件為false的時候跳出

          var i = 0;
          do {
             i++;
             console.log(i);//輸出1
          } while (i < 0);

          這個例子說明了,即使在不滿足while內條件的時候,do...while里也迭代循環了一次。

          for循環
          for(var i= 0;i<arr.length;i++){  
                 console.log(i+'/'+arr[i]);  
          }
          

          //for ([變量初始化];[條件];[變量遞增或遞減]) { //代碼塊 }

          for是普通的循環遍歷方式,便于理解 。循環的變量聲明和初始化,條件查詢和循環變量的遞增或遞減都可以在相同的行中完成。它增加了可讀性,降低了出錯的幾率。

          for...in循環
          var obj = {a:1, b:2, c:3};  
          for (var o in obj) {
            console.log(o + " = " + obj[o]);
          }
          //語法:variable在每次迭代時,將不同的屬性名分配給變量。 object 被迭代枚舉其屬性的對象
          for (variable in object) {...}

          for...in主要用于遍歷一個對象的可枚舉屬性,注意點:

          1.用于遍歷數組,結果不一定按次序訪問元素 。2.遍歷對象他會對原型上的元素進行遍,如果你只要考慮對象本身的屬性,而不是它的原型,那么使用 getOwnPropertyNames() 或hasOwnProperty()來確定某屬性是否是對象本身的屬性。代碼如下

          for (var o in obj) {
              if (obj.hasOwnProperty(o)) {
                  console.log(o + " = " + obj[o]);
             }
          }
          for...of循環

          for...of可用于“Array,Map,Set,String,TypedArray,arguments對象等”上創建一個迭代循環。這是ES6中新引入的一種循環類型。

          let arr = [1, 2, 3];
          for (let v of arr) {
              ++v;
              console.log(v);//輸出2 3 4
          }

          針對其他類型的循環這里就不一一介紹了。

          foreach循環
          Firefox 和Chrome 的Array 類型都有forEach的函數。 主要IE是不沒有foreach方法的,如果使用了會拋出異常: 對象不支持“forEach”屬性或方法。   使用forEach遍歷數組是非常簡單的。因為不用擔心循環變量、條件和其他任何東西,它會處理所有迭代的問題。
          var arr=[];
          arr.push(1);
          arr.push(2);
          arr.forEach(function(e){  
              console.log(e);  
          })

          如果要實現,考慮到兼容IE的話, 我們需要給它手動添加這個原型方法。代碼如下:

          if (!Array.prototype.forEach) {  
              Array.prototype.forEach = function(callback, thisArg) {  
                  var T, k;  
                  if (this == null) {  
                      throw new TypeError(" this is null or not defined");  
                  }  
                  var O = Object(this);  
                  var len = O.length >>> 0;
                  if ({}.toString.call(callback) != "[object Function]") {  
                      throw new TypeError(callback + " is not a function");  
                  }  
                  if (thisArg) {  
                      T = thisArg;  
                  }  
                  k = 0;  
                  while (k < len) {  
                      var kValue;  
                      if (k in O) {  
                          kValue = O[k];  
                          callback.call(T, kValue, k, O);  
                      }  
                      k++;  
                  }  
              };  
          }
          map循環

          map數組的另一個原型方法,通過map方法將創建一個新的數組,該數組的返回值由一個給定的數組的函數執行生成。代碼如下

          var arr=[1, 2, 3].map(function(x) { 
              console.log(x);//輸出1,2,3
              return x*2;
          });
          console.log(arr);//輸出[2,4,6]

          注意的是:map()的方法以函數作為參數,函數內包括了3個參數,3個參數都是可以選填的。

          currentValue在數組中處理的當前元素 ,index:數組中正在處理的當前元素的索引值 ,array:數組映射的調用 


          站長推薦

          1.阿里云: 本站目前使用的是阿里云主機,安全/可靠/穩定。點擊領取2000元代金券、了解最新阿里云產品的各種優惠活動點擊進入

          2.騰訊云: 提供云服務器、云數據庫、云存儲、視頻與CDN、域名等服務。騰訊云各類產品的最新活動,優惠券領取點擊進入

          3.廣告聯盟: 整理了目前主流的廣告聯盟平臺,如果你有流量,可以作為參考選擇適合你的平臺點擊進入

          鏈接: http://www.modern-decoration.com.cn/article/detial/35

          JavaScript中,數組和對象的遍歷方法總結

          循環遍歷是寫程序很頻繁的操作,JavaScript 提供了很多方法來實現。這篇文章將分別總結數組和對象的遍歷方法,新手可以通過本文串聯起學過的知識。

          javascript如何循環遍歷對象?

          在JavaScript中有多種循環遍歷對象的方法,下面本篇文章就來給大家介紹一下使用JavaScript循環遍歷對象的方法,希望對大家有所幫助。

          Js中常見的幾種循環遍歷

          項目開發中,不管是建立在哪個框架基礎上,對數據的處理都是必須的,而處理數據離不開各種遍歷循環。javascript中循環遍歷有很多種方式,記錄下幾種常見的js循環遍歷。

          深度優先遍歷,廣度優先遍歷實現對象的深拷貝 深度優先遍歷

          深度優先遍歷(Depth-First-Search),是搜索算法的一種,它沿著樹的深度遍歷樹的節點,盡可能深地搜索樹的分支。當節點v的所有邊都已被探尋過,將回溯到發現節點v的那條邊的起始節點。

          Js數組遍歷方法總匯

          for in語句用于遍歷數組或者對象的屬性(對數組或者對象的屬性進行循環操作);For循環可以將代碼塊執行指定的次數。forEach按照原始數組元素順序依次處理元素.

          JS中map與forEach的用法

          相同點:都是循環遍歷數組中的每一項;每次執行匿名函數都支持三個參數,參數分別為item(當前每一項),index(索引值),arr(原數組)

          Js二叉樹與多叉樹的遍歷

          二叉樹的順序存儲結構就是用一維數組存儲二叉樹中的各個結點,并且結點的存儲位置能體現結點之間的邏輯關系。二叉樹的遍歷有三種方式,如下:

          js數組、對象、字符串的遍歷

          數組遍歷:for --使用變量將數組長度緩存起來,在數組較長時性能優化效果明顯,forEach --ES5語法;對象遍歷:for...in --以任意順序遍歷一個對象自有的、繼承的、可枚舉的

          javascript如何遍歷對象?

          javascript遍歷對象的方法:1、使用Object.keys()遍歷。2、使用for..in.遍歷。3、使用Object.getOwnPropertyNames(obj)遍歷。4、使用Reflect.ownKeys(obj)遍歷。

          JavaScript數組遍歷:for、foreach、for in、for of、$.each、$().each的區別

          JavaScript數組遍歷的區別,推薦在循環對象屬性的時候使用for in,在遍歷數組的時候的時候使用for of;for in循環出的是key,for of循環出的是value;for of是ES6新引入的特性。修復了ES5的for in的不足;

          fly63.com版權所有,內容以共享、參考、研究為目的,不存在任何商業目的。其版權屬原作者所有,如有侵權,請與小編聯系!情況屬實本人將予以刪除!

          文章投稿關于web前端網站點搜索站長推薦網站地圖站長QQ:522607023

          小程序專欄: 土味情話心理測試腦筋急轉彎幽默笑話段子句子語錄成語大全

          国产精品高清视频免费 - 视频 - 在线观看 - 影视资讯 - 唯爱网