【问题标题】:In this code how i can access two or more properties at a time using FOR loop?在这段代码中,我如何使用 FOR 循环一次访问两个或多个属性?
【发布时间】:2020-08-31 00:14:37
【问题描述】:

    const array1 = [
        [
            {crow : 'black',
            pigon : 'white',
            parrot : 'green',}
        ],
        [
            {apple : 'red',
            orange : 'green',
            mango : 'yellow'}
        ]
    ]

请务必回答!我如何使用循环甚至 filter() 函数访问这个嵌套数组的两个或多个属性。

【问题讨论】:

  • 你到底是什么意思?
  • 让 valueAccessing = array1.filter((user)=>user[0] = 'green') console.log(valueAccessing) 像这段代码我想访问 value = green 的属性。
  • 这还没有弄清楚。
  • let valueAccessing = array1.filter((user)=>user[0] = 'green') console.log(valueAccessing) 这是我可以访问嵌套数组属性的问题的剩余代码通过上述方式获得绿色价值?现在如果你能理解,请回答这个问题。

标签: javascript loops multidimensional-array filter properties


【解决方案1】:
array1.forEach(arr => {
   // arr[0] is your object
   let crow = arr[0].crow;
   let pigon= arr[0].crow;
   let parrot= arr[0].crow;
})

但这仅适用于 array1[0] 所以更好的是 for 循环所有对象键

array1.forEach((arr, i) => {
   // arr[0] is your object
   const entries = Object.entries(arr[0])
   console.log(entries) 
})

结果是:

0: (2) ["crow", "black"]
1: (2) ["pigon", "white"]
2: (2) ["parrot", "green"]

0: (2) ["apple", "red"]
1: (2) ["orange", "green"]
2: (2) ["mango", "yellow"]

【讨论】:

    【解决方案2】:

    由于数组有 2 个元素,您可以使用索引号来引用每个元素。 第一个元素在索引 0 中,而第二个元素在索引 1 中。例如 array1[0]、array1[1] 使用 for 循环遍历数组元素并打印出每个对象

    array1[0].forEach(function(firstelement){
        console.log("Crow: "+ firstelement.crow)
        console.log("Pigon: "+ firstelement.pigon)
        console.log("Parrot: "+ firstelement.parrot)
    
    }) 
    
    array1[1].forEach(function(secondelement){
        console.log("Apple: "+ secondelement.apple)
        console.log("Orange: "+ secondelement.orange)
        console.log("Mango : "+ secondelement.mango)
    
    }) 
    

    【讨论】:

    • 不错的尝试!但不是我问题的答案!我问如何通过嵌套对象数组的值访问键?
    【解决方案3】:
    array1.filter((arr) =>
        document.write(arr.filter((arr1)=>{
            console.log(Object.keys(arr1)[Object.values(arr1).indexOf('green')])
        }))
    )
    

    这是我的问题的确切答案,没有人能解决! 无论如何,谢谢大家enter code here尽力而为!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-29
      • 1970-01-01
      • 2022-08-22
      • 1970-01-01
      • 2021-09-25
      • 1970-01-01
      相关资源
      最近更新 更多