亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

js的數組或者對象的遞歸遍歷問題

例如给定一个数组,他里面可能嵌套数组,嵌套的数组里面可能还有数组。
这种想得到所有元素组成一个数组,可以考虑用 递归遍历数组

递归遍历数组

例如[2,[6,7,12,34,3],[5,23,[1]]]

var arrs = [2 , [6,7,12,34,3] , [ 5,23,[1],9] ] ;
var arr  = [];
function recursive(arrs) {
  for(var i = 0; i < arrs.length; i++){
     if(typeof  arrs[i] === "number" ) {
          arr.push( arrs[i] );
           }else{
            recursive( arrs[i] );
           }
    }
}
recursive(arrs);
console.log(arr);

递归遍历对象

var obj = {
           a:{
               name : "maoguotao",
               age :  18,
               sex  : 'M',   
               },
           b:{
               name : "maoshuqin",
               age :  18,
               sex  : 'M',     
               },
           c:{
               name : "MGT360124",
               age :  18,
               sex  : 'M',     
               title : {
                       job:"班长"
                       } 
               }
};
var arr = [];
function   f( obj ) {
         for( var i  in  obj ) {
             if  ( typeof  obj[i] === "object"  ) {
                f ( obj[i] );
               }else{
                arr.push( obj[i] );
               }
        }
 }
 f( obj );
console.log(arr);

遍历对象的属性用for-in,但是要用hasOwnProperty判断

var obj = {
name:"maoguotao",
age:18,
sex:'M'
}
for ( var i in obj ) {
  if( obj.hasOwnProperty ( i )  ){
      console.log( i + ":" + obj[i] );
        }
}
點擊查看更多內容
5人點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消