最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

js之遍歷嵌套數(shù)組對(duì)象方式

 更新時(shí)間:2023年06月29日 15:23:08   作者:前端鼓勵(lì)師  
這篇文章主要介紹了js之遍歷嵌套數(shù)組對(duì)象方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

js遍歷嵌套數(shù)組對(duì)象

        chuli(arr) {
            let kongarr = []
            for (let i = 0; i < arr.length; i++) {
                console.log("arr[i]", arr[i])
                let children1=[]
                let children2=[]
                let children3=[]
                let obj={}
                obj.id=arr[i].id
                obj.name=arr[i].name
                obj.children=children2
                let two=arr[i].children
                for (let j=0;j<two.length;j++){
                    console.log("two",two[j])
                    let san=two[j].children
                    console.log("san",san)
                    children2.push({
                        id:two[j].id,
                        name:two[j].name,
                        children:children3
                    })
                    if (two[j].name=='市公司'&&two[j].children.length>=2){
                        let sum=0
                        for (let k=0;k<san.length;k++){
                        }
                        children3.push({
                            age:"小計(jì)"
                        })
                    }else {
                        for (let k=0;k<san.length;k++){
                            children3.push({
                                bmdm:san[k].bmdm,
                                xmlx:san[k].xmlx
                            })
                        }
                    }
                }
                kongarr.push(obj)
            }
            console.log("kongarr2", kongarr)
            return kongarr
        }

js中三種主要的遍歷對(duì)象的方法

  • for in
  • Object.keys
  • Object.getOwnProperty

對(duì)非Array對(duì)象類型的遍歷

1、for in

主要用于遍歷對(duì)象的可枚舉屬性,包括自有屬性、繼承自原型的屬性

var obj = {"name":"tom","sex":"male"};
Object.defineProperty(obj, "age", {value:"18", enumerable:false});//增加不可枚舉的屬性age
Object.prototype.protoPer1 = function(){console.log("name is tom");};//通過原型鏈增加屬性,為一個(gè)函數(shù)
Object.prototype.protoPer2 = 2;通過原型鏈增加屬性,為一個(gè)整型值2
console.log("For In : ");
for(var a in obj)
console.log(a);

輸出的截圖為:

總結(jié):for in 主要用于遍歷對(duì)象的可枚舉屬性,包括自有屬性、繼承自原型的屬性,示例中的屬性age為不可可枚舉,所以沒有輸出。

2、Object.keys

此方法返回一個(gè)數(shù)組,元素均為對(duì)象自有可枚舉的屬性

var obj = {"name":"tom","sex":"male"};
Object.defineProperty(obj, "age", {value:"18", enumerable:false});//增加不可枚舉的屬性age
Object.prototype.protoPer1 = function(){console.log("name is tom");};//通過原型鏈增加屬性,為一個(gè)函數(shù)
Object.prototype.protoPer2 = 2;通過原型鏈增加屬性,為一個(gè)整型值2
console.log("Object.keys:")
console.log(Object.keys(obj));

輸出的截圖為:

總結(jié):Object.keys主要用于遍歷對(duì)象自有的可枚舉屬性,不包括繼承自原型的屬性和不可枚舉的屬性。

3、Object.getOwnProperty

此方法用于返回對(duì)象的自有屬性,包括可枚舉和不可枚舉的屬性

Object.defineProperty(obj, "age", {value:"18", enumerable:false});//增加不可枚舉的屬性age
Object.prototype.protoPer1 = function(){console.log("name is tom");};//通過原型鏈增加屬性,為一個(gè)函數(shù)
Object.prototype.protoPer2 = 2;通過原型鏈增加屬性,為一個(gè)整型值2
console.log("Object.getOwnPropertyNames: ");
console.log(Object.getOwnPropertyNames(obj));

輸出的截圖為:

總結(jié):Object.getOwnProperty主要用于返回對(duì)象的自有屬性,包括可枚舉和不可枚舉的屬性,不包括繼承自原型的屬性。

對(duì)Array對(duì)象類型的遍歷

1、for in

var arr = [1,2,3,4,5,6];
for(var a in arr) console.log(a);

輸出的截圖為:

總結(jié):輸出為數(shù)組對(duì)象的index 值。

2、Object.keys

var arr = [1,2,3,4,5,6];
console.log(Object.keys(arr));

輸出的截圖為:

總結(jié):輸出為數(shù)組對(duì)象的index 值。

3、Object.getOwnProperty

var arr = [1,2,3,4,5,6];
console.log(Object.getOwnPropertyNames(arr));

輸出的截圖為:

總結(jié):輸出為數(shù)組對(duì)象的index 值和數(shù)組長(zhǎng)度的屬性值。

最后

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

正宁县| 南阳市| 沙坪坝区| 海南省| 湘潭县| 迭部县| 太湖县| 文昌市| 密山市| 德令哈市| 海盐县| 中宁县| 广平县| 施甸县| 安平县| 西城区| 湖南省| 黄陵县| 汝阳县| 海盐县| 甘南县| 越西县| 蒲城县| 内江市| 青川县| 郎溪县| 南汇区| 福泉市| 华坪县| 义马市| 巫山县| 南江县| 深泽县| 林口县| 长汀县| 康马县| 江永县| 琼海市| 武清区| 宁夏| 新蔡县|