简体   繁体   English

使用 array.map 使用 typescript 中数组的 object 数组的键

[英]using array.map to use key of object array of array in typescript

is there anyway I can use array.map to apply a function that parameter is key of array.object in typescript?无论如何我可以使用array.map来应用 function 该参数是 array.object 在 Z1E35BCBA2DBA1089CCF7 中的关键I have one object array inside of array.我在数组中有一个 object 数组。 the object with key min and max. object 带最小值和最大值。 I would like to do something like someArrayFunction(array.map(func1(key), array.map())) so I can compare the value from each key of object array我想做一些像 someArrayFunction(array.map(func1(key), array.map())) 这样我可以比较 object 数组的每个键的值

const allVariables: any[] =  [
  [ { name: 'a', value:{min: 1, max: 2}, expect: {min: 1, max: 2}}, { name: 'b', value: {min: 11, max: 22}, expect: {min:11, max: 22} }],
  [ { name: 'a1',value:{min: 1, max: 2}, expect: {min: 1, max: 2}}, {name: 'b1', value: {min: 11, max: 22}, expect: {min:11, max: 22} }],
  [ { name: 'a2',value:{min: 1, max: 2}, expect: {min: 1, max: 2}}, {name: 'b2', value: {min: 11, max: 22}, expect: {min:11, max: 22} }],
  ];

allVariables.forEach(obj => {
  Object.keys(obj).forEach((key) => {
    // someArrayFunction(someFunc(obj.name, key), obj.value[key])
    // so to compare value.min === expect.min from name a
    // so to compare value.min === expect.min from name b
    // so to compare value.min === expect.min from name a1
    // so to compare value.min === expect.min from name b1
    // so to compare value.min === expect.min from name c1
    // so to compare value.min === expect.min from name c1

  })
})

// someArrayFunction(parameter: string[], v: number){
  // do something with parameter and v...
// }

I don't know exactly if you wanted that.我不知道你是否想要那个。

const allVariables: any[] =  [
  [
    { name: 'a', value:{min: 1, max: 2}, expect: { min: 1, max: 2 } },
    { name: 'b', value: {min: 11, max: 22}, expect: { min:11, max: 22 } },
  ],
  [
    { name: 'a1',value:{min: 1, max: 2}, expect: { min: 1, max: 2 } },
    { name: 'b1', value: {min: 11, max: 22}, expect: { min:11, max: 22} },
  ],
  [
    { name: 'a2',value:{min: 1, max: 2}, expect: { min: 1, max: 2 } },
    { name: 'b2', value: {min: 11, max: 22}, expect: { min:11, max: 22 } },
  ],
];

allVariables.forEach(array => {
  array.forEach(obj => {
    const {value, expect} = obj;

    console.log(someArrayFunction(obj, value));
  })
})


function someArrayFunction(value, expect) {
  return value.min === expect.min;
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM