亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

JS如何遍歷帶有子集的數(shù)組集合(嵌套數(shù)組)

 更新時間:2023年06月29日 14:55:41   作者:薄荷琴糖  
這篇文章主要介紹了JS如何遍歷帶有子集的數(shù)組集合(嵌套數(shù)組)問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

JS遍歷帶有子集的數(shù)組集合

js中兩種for循環(huán):

for(var i in obj)
for(var i=0;i<obj.length;i++)

區(qū)別:

for(var i in obj)

  • 是增強(qiáng)for循環(huán),是不使用下標(biāo)的一種遍歷方式,簡單高效,缺點是不能使用下標(biāo)。
  • 如果想要循環(huán)遍歷一個json對象就用第一個
  • 如果想循環(huán)遍歷一個數(shù)組對象就用第二個

for(var i in obj)

  • 1.遍歷數(shù)組時,i是索引值,arr[i]是索引號對應(yīng)的值。
  • 2.遍歷字符串時,i是索引值,arr[i]是索引號對應(yīng)的字符。
  • 3.遍歷json對象時,i是冒號前面的值,json[i]是冒號后面的值。

遍歷嵌套數(shù)組(遞歸)【判斷子集】

traversal(dataInfo)//dataInfo是要循環(huán)遍歷的集合
//遍歷方法
function traverse(data) {
            for (var i in data) {
                if (data[i].children) {
                    traverse(data[i].children)
                }
                if (!data[i].children.length) {
                    delete data[i].children;
                }
            }
        }

例如我的集合如下

我要獲取其中的Name并輸出

代碼如下:

traversal(dataInfo)//dataInfo是要循環(huán)遍歷的集合
//遍歷方法
function traverse(data) {
            for (var i in data) {
                alert(data[i].Name)
                if (data[i].children) {
                    traverse(data[i].children)
                }
                if (!data[i].children.length) {
                    delete data[i].children;
                }
            }
        }

使用JS找出給定數(shù)組的所有子集

題目描述

給定一組不含重復(fù)元素的整數(shù)數(shù)組 nums,返回該數(shù)組所有可能的子集(冪集)。

說明:解集不能包含重復(fù)的子集。

解題思路

  • 采用二進(jìn)制的思路,全0對應(yīng)空集,全1對應(yīng)全集
  • 根據(jù)數(shù)組長度決定二進(jìn)制位數(shù)
  • 遍歷二進(jìn)制各值,使用按位與操作符,生成數(shù)組的子集

解題代碼

/**
?* @param {number[]} nums
?* @return {number[][]}
?*/
var subsets = function(nums) {
? ? let res = [], len = nums.length;
? ? for (let i = 0; i < (1 << len); i++) {
?? ??? ?let arr = [];
? ? ? ? for (let j = 0; j < len; j++) {
? ? ? ? ? ? if (i & (1 << j)) arr.push(nums[j]);
? ? ? ? }
? ? ? ? res.push(arr);
? ? }
? ? return res;
};

總結(jié)

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

相關(guān)文章

  • 由document.body和document.documentElement想到的

    由document.body和document.documentElement想到的

    不知道大家對這個標(biāo)題有沒有想法,反正此前我一直把他們混為了一談。其實不然,首先需有個“標(biāo)準(zhǔn)”的概念。
    2009-04-04
  • 學(xué)前端,css與javascript重難點淺析

    學(xué)前端,css與javascript重難點淺析

    JavaScript是一種屬于網(wǎng)絡(luò)的腳本語言,已經(jīng)被廣泛用于Web應(yīng)用開發(fā),CSS(Cascading Style Sheet)層疊樣式表單,今天給大家分享css與javascript重難點,感興趣的朋友一起看看吧
    2020-06-06
  • 詳解webpack-dev-server使用http-proxy解決跨域問題

    詳解webpack-dev-server使用http-proxy解決跨域問題

    這篇文章主要介紹了詳解webpack-dev-server使用http-proxy解決跨域問題,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-01-01
  • webpack2.0搭建前端項目的教程詳解

    webpack2.0搭建前端項目的教程詳解

    這篇文章主要給大家介紹了關(guān)于webpack2.0搭建前端項目的相關(guān)資料,文中介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用webpack2.0具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧。
    2017-04-04
  • 淺談js對象屬性 通過點(.) 和方括號([]) 的不同之處

    淺談js對象屬性 通過點(.) 和方括號([]) 的不同之處

    下面小編就為大家?guī)硪黄獪\談js對象屬性 通過點(.) 和方括號([]) 的不同之處。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-10-10
  • ionic開發(fā)中點擊input時鍵盤自動彈出

    ionic開發(fā)中點擊input時鍵盤自動彈出

    ionic開發(fā)移動端界面時,在輸入用戶名和密碼的時候,輸入法不要擋住我的輸入框,并且輸入框往上滾動的時候,頂部標(biāo)題不要上移,下面給大家分享實現(xiàn)代碼,一起看看吧
    2016-12-12
  • uni-app實現(xiàn)獲取驗證碼倒計時功能

    uni-app實現(xiàn)獲取驗證碼倒計時功能

    這篇文章主要為大家詳細(xì)介紹了uni-app實現(xiàn)獲取驗證碼倒計時功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-11-11
  • 小程序錄音功能實現(xiàn)

    小程序錄音功能實現(xiàn)

    這篇文章主要介紹了小程序錄音功能實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • JavaScript數(shù)據(jù)結(jié)構(gòu)與算法之基本排序算法定義與效率比較【冒泡、選擇、插入排序】

    JavaScript數(shù)據(jù)結(jié)構(gòu)與算法之基本排序算法定義與效率比較【冒泡、選擇、插入排序】

    這篇文章主要介紹了JavaScript數(shù)據(jù)結(jié)構(gòu)與算法之基本排序算法定義與效率比較,結(jié)合實例形式詳細(xì)總結(jié)分析了javascript排序算法中的冒泡、選擇、插入等排序算法原理與操作技巧,需要的朋友可以參考下
    2019-02-02
  • 微信小程序 wx:for 與 wx:for-items 與 wx:key的正確用法

    微信小程序 wx:for 與 wx:for-items 與 wx:key的正確用法

    這篇文章主要介紹了微信小程序 wx:for 與 wx:for-items 與 wx:key的正確用法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05

最新評論