Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何循环通过不可变映射的不可变映射?_Javascript_Loops_Immutable.js - Fatal编程技术网

Javascript 如何循环通过不可变映射的不可变映射?

Javascript 如何循环通过不可变映射的不可变映射?,javascript,loops,immutable.js,Javascript,Loops,Immutable.js,我有一张不变的地图 let mapOfMaps = Immutable.fromJS({ 'abc': { id: 1 type: 'request' }, 'def': { id: 2 type: 'response' }, 'ghi': { type: cancel' }, 'jkl': { type: 'edit' } });

我有一张不变的地图

let mapOfMaps = Immutable.fromJS({
    'abc': {
         id: 1
         type: 'request'
    },
    'def': {
        id: 2
        type: 'response'
    },
    'ghi': {
        type: cancel'
    },
    'jkl': {
        type: 'edit'
    }
});
我怎么能

  • 在mapOfMaps中循环并获取所有键以打印出来
  • 通过mapOfMaps的键循环以获取键的所有内容
  • 在这个阶段,我没有选择切换到列表

    我不知道如何循环键。

    使用
    keySeq()
    /
    valueSeq()
    方法可以获得键/值的序列。然后,您可以使用
    forEach()
    对其进行迭代:

    此外,您还可以使用
    entrySeq()
    在一个循环中迭代这两个函数:


    如果我们同时需要key:value,我们也可以使用
    for
    循环
    for
    循环提供了设置
    中断的灵活性

    //Iterating over key:value pair in Immutable JS map object.
    
    for(let [key, value] of mapOfMaps) {
           console.log(key, value)
    
    }
    

    提供所需结果的示例。你知道如何用1级深度迭代
    贴图的键吗?谢谢,这对我很有帮助。靠黄金。遗憾的是,ImmutableJS描述是面向类型脚本的,因此很多人很难理解。
    
    mapOfMaps.entrySeq().forEach(e => console.log(`key: ${e[0]}, value: ${e[1]}`));
    
    //Iterating over key:value pair in Immutable JS map object.
    
    for(let [key, value] of mapOfMaps) {
           console.log(key, value)
    
    }