TS 多層map的數據


定義類型:

  static XjdymData: { [key: string]: {} } = {}

 

 

oneUnion是這樣的結構:

         let oneUnion = {};
            let count = await userRedis.count();
            for (let userid in jsUninoData) {
                let oneUser = <xjdymUnionData>{};
                let strUserData = await userRedis.get(userid);
                oneUser = JSON.parse(strUserData as string);
                oneUnion[userid] = oneUser;
                console.log(`====XXXXXXX======union:${unionID},count:${count},userid:${userid}`);
                console.log("userData:", oneUser)
            }

插入復雜數據前,先判斷 下一層結構是否存在

  if (!CZsjUnionXjdymwar.XjdymData[group]) CZsjUnionXjdymwar.XjdymData[group] = {}

再 然后寫入我們的 map 數據:

    CZsjUnionXjdymwar.XjdymData[group][unionID] = oneUnion;

 

總結:

1.定義類型很重要;

2.賦值前,對key值是否存在進行一次判斷,判斷是否為空

這里面涉及到2層map,所以需要判斷空1次;  如果是3層,可能會需要進一步判斷。。。如果是3層map只能說明數據結構太復雜了,設計有問題。

一般2層是畢竟復雜的了,能解決很多通用問題。。

 

 

數據展開如下圖:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM