Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/447.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.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_Comparison_Lodash - Fatal编程技术网

Javascript 将整数数组与对象数组和返回属性进行比较

Javascript 将整数数组与对象数组和返回属性进行比较,javascript,comparison,lodash,Javascript,Comparison,Lodash,给定以下对象数组: var arrayOfObjs = [{ id: "d8eed6df-9f12-47d4-5b71-3352a92ebcf0", typeID: 2 }, { id: "270d8355-d8b6-49c4-48ac-97a44422c705", typeID: 3 }, { id: "sdks7878-d8b6-49c4-48ac-97a44422c705", typeID: 4 } ]; 和一个整数数组

给定以下对象数组:

var arrayOfObjs = [{
    id: "d8eed6df-9f12-47d4-5b71-3352a92ebcf0",
    typeID: 2
  },
  {
    id: "270d8355-d8b6-49c4-48ac-97a44422c705",
    typeID: 3
  },
  {
    id: "sdks7878-d8b6-49c4-48ac-97a44422c705",
    typeID: 4
  }
];
和一个整数数组:

var arrayOfInts = [2, 4];
如果INT数组与arrayOfObjects匹配,如何比较两者并返回ID数组

报税表应为:

var matchingIDs = [
    "d8eed6df-9f12-47d4-5b71-3352a92ebcf0", 
    "sdks7878-d8b6-49c4-48ac-97a44422c705"
];


var missingIDs = ["270d8355-d8b6-49c4-48ac-97a44422c705"];
使用array.prototype.filter、array.prototype.includes和array.prototype.map

变量数据=[{ id:d8eed6df-9f12-47d4-5b71-3352a92ebcf0, 类型ID:2 }, { id:270d8355-d8b6-49c4-48ac-97a44422c705, 类型ID:3 }, { id:sdks7878-d8b6-49c4-48ac-97a44422c705, 类型ID:4 }]; var arrayOfInts=[2,4]; var matchingIDs=datas.filterd=>arrayOfInts.includesd.typeID.mape=>e.id; var missingIDs=datas.filterd=>!ArrayFints.includesd.typeID.mape=>e.id; 日志'matchingIDs:',matchingIDs; console.log'missingIDs:',missingIDs 使用array.prototype.filter、array.prototype.includes和array.prototype.map

变量数据=[{ id:d8eed6df-9f12-47d4-5b71-3352a92ebcf0, 类型ID:2 }, { id:270d8355-d8b6-49c4-48ac-97a44422c705, 类型ID:3 }, { id:sdks7878-d8b6-49c4-48ac-97a44422c705, 类型ID:4 }]; var arrayOfInts=[2,4]; var matchingIDs=datas.filterd=>arrayOfInts.includesd.typeID.mape=>e.id; var missingIDs=datas.filterd=>!ArrayFints.includesd.typeID.mape=>e.id; 日志'matchingIDs:',matchingIDs;
console.log'missingIDs:',missingIDs 为了实现这一点,我选择了map\filter用法,因为javascript是一种函数式语言

常数allItems=[{ id:d8eed6df-9f12-47d4-5b71-3352a92ebcf0, 类型ID:2 }, { id:270d8355-d8b6-49c4-48ac-97a44422c705, 类型ID:3 }, { id:sdks7878-d8b6-49c4-48ac-97a44422c705, 类型ID:4 }]; 常数validIds=[2,4]; 常量filteredItems=allItems .filter{typeID}=>ValidDS.IncludeTypeId .map{id}=>id
logfilteredItems为了实现这一点,我选择了map\filter用法,因为javascript是一种函数式语言

常数allItems=[{ id:d8eed6df-9f12-47d4-5b71-3352a92ebcf0, 类型ID:2 }, { id:270d8355-d8b6-49c4-48ac-97a44422c705, 类型ID:3 }, { id:sdks7878-d8b6-49c4-48ac-97a44422c705, 类型ID:4 }]; 常数validIds=[2,4]; 常量filteredItems=allItems .filter{typeID}=>ValidDS.IncludeTypeId .map{id}=>id
console.logfilteredItems使用lodash,您可以使用以下链接实现此目的:

var arrayOfObjs=[{id:d8eed6df-9f12-47d4-5b71-3352a92ebcf0,typeID:2},{id:270d8355-d8b6-49c4-48ac-97a44422c705,typeID:3},{id:sdks7878-d8b6-49c4-48ac-97a44422c705,typeID:4}]; var arrayOfInts=[2,4]; 变量结果=_arrayOfObjs .keyBy'typeID'//通过对象的类型ID获取对象的字典 .atarrayOfInts//获取与int数组匹配的对象 .map'id'//将每个对象映射到id 价值 console.logresult;
使用lodash,您可以通过以下方式实现此目的:

var arrayOfObjs=[{id:d8eed6df-9f12-47d4-5b71-3352a92ebcf0,typeID:2},{id:270d8355-d8b6-49c4-48ac-97a44422c705,typeID:3},{id:sdks7878-d8b6-49c4-48ac-97a44422c705,typeID:4}]; var arrayOfInts=[2,4]; 变量结果=_arrayOfObjs .keyBy'typeID'//通过对象的类型ID获取对象的字典 .atarrayOfInts//获取与int数组匹配的对象 .map'id'//将每个对象映射到id 价值 console.logresult; Arrayofobj总是比arrayOfInts大吗?Arrayofobj总是比arrayOfInts大吗?