Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.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_Arrays_Object_Lodash - Fatal编程技术网

Javascript 通过将对象数组与阵列进行比较创建新数组

Javascript 通过将对象数组与阵列进行比较创建新数组,javascript,arrays,object,lodash,Javascript,Arrays,Object,Lodash,我有一个游戏数据和使用过的运动员的列表。我需要制作一个新的数组,它只包含不在usedAthletes中的gameData中的运动员。在过去的一天左右,我真的到处看看,试过洛达斯和各种各样的东西。任何建议都很好。如果有ES6方法可以工作,那么知道这一点也很酷:) 您可以使用并排除usedAthletes 您的解决方案不起作用,因为您在每次迭代中初始化结果数组 const gameData=[{运动员:“佩顿·曼宁”,Img:“url”},{运动员:“托尼·霍克”,Img:“url”},{运动员:

我有一个游戏数据和使用过的运动员的列表。我需要制作一个新的数组,它只包含不在usedAthletes中的gameData中的运动员。在过去的一天左右,我真的到处看看,试过洛达斯和各种各样的东西。任何建议都很好。如果有ES6方法可以工作,那么知道这一点也很酷:)

您可以使用并排除
usedAthletes

您的解决方案不起作用,因为您在每次迭代中初始化结果数组

const
gameData=[{运动员:“佩顿·曼宁”,Img:“url”},{运动员:“托尼·霍克”,Img:“url”},{运动员:“汤姆·布雷迪”,Img:“url”},{运动员:“乌塞恩·博尔特”,Img:“url”},{运动员:“凯文·杜兰特”,Img:“url”},{运动员:“克里斯蒂亚诺·罗纳尔多”,Img:“url”},{运动员:“迈克尔·菲尔普斯,Img:“url”},{运动员:“康纳·麦格雷戈”,Img:“url”},{运动员:菲尔·米克尔森,{运动员:斯蒂芬·库里,{运动员:罗里·麦克罗伊,{运动员:迈克·特劳特,{运动员:丹尼卡·帕特里克,{运动员:德鲁·布里斯,{运动员:卡梅洛·安东尼,}运动员:罗里·麦克罗伊,{运动员:迈克·特劳特,{运动员:丹尼卡·帕特里克,},运动员:德鲁·布里斯,{运动员:卡梅洛·安东尼,{运动员:罗切特,{运动员:莱恩·洛切特,{运动员:迈克尔·洛切特,}“Eli Manning”,Img:“url”},{运动员:“Chris Paul”,Img:“url”},
usedAthletes=[“佩顿·曼宁”、“托尼·霍克”、“汤姆·布雷迪”],
结果=gameData.filter(o=>!usedAthletes.includes(o.Athlete));
console.log(结果);
.as控制台包装{max height:100%!important;top:0;}
您可以使用并排除
usedAthletes

您的解决方案不起作用,因为您在每次迭代中初始化结果数组

const
gameData=[{运动员:“佩顿·曼宁”,Img:“url”},{运动员:“托尼·霍克”,Img:“url”},{运动员:“汤姆·布雷迪”,Img:“url”},{运动员:“乌塞恩·博尔特”,Img:“url”},{运动员:“凯文·杜兰特”,Img:“url”},{运动员:“克里斯蒂亚诺·罗纳尔多”,Img:“url”},{运动员:“迈克尔·菲尔普斯,Img:“url”},{运动员:“康纳·麦格雷戈”,Img:“url”},{运动员:菲尔·米克尔森,{运动员:斯蒂芬·库里,{运动员:罗里·麦克罗伊,{运动员:迈克·特劳特,{运动员:丹尼卡·帕特里克,{运动员:德鲁·布里斯,{运动员:卡梅洛·安东尼,{运动员:罗里·麦克罗伊,},运动员:迈克·特劳特,{运动员:丹尼卡·帕特里克,},运动员:德鲁·布里斯,{运动员:卡梅洛·安东尼,{运动员:罗切特,{运动员:莱恩·洛赫特,{运动员:},运动员:}Eli Manning,Img:“url”},{运动员:“Chris Paul”,Img:“url”},
usedAthletes=[“佩顿·曼宁”、“托尼·霍克”、“汤姆·布雷迪”],
结果=gameData.filter(o=>!usedAthletes.includes(o.Athlete));
console.log(结果);
.as控制台包装器{max height:100%!important;top:0;}
Lodash使用比较器创建不包含在其他给定数组中的数组值数组:

const gameData=[{“运动员”:“佩顿·曼宁”,“Img”:“url”},{“运动员”:“托尼·霍克”,“Img”:“url”},{“运动员”:“汤姆·布雷迪”,“Img”:“url”},{“运动员”:“乌塞恩·博尔特”,“Img”:“运动员”:“凯文·杜兰特”,“Img”:“url”},{“运动员”:“克里斯蒂亚诺·罗纳尔多”,“Img”:“url”},{“运动员”:“迈克尔·菲尔普斯”,“Img”:“url”},{“运动员”:“康纳·麦格雷戈”,“Img”:“运动员”},{“url”}“:”菲尔·米克尔森“,”Img“:”url“,”运动员“,”斯蒂芬·库里“,”Img“,”运动员“,”罗里·麦克罗伊“,”Img“,”url“,”运动员“,”迈克·特劳特“,”Img“,”运动员“,”丹尼卡·帕特里克“,”Img“:”url“,”运动员“,”德鲁·布里斯“,”Img“,”运动员“,”卡梅洛·安东尼“,”Img“,”url“,”运动员“,”莱恩·洛希特“,”Img“,”url“,”运动员“,”埃利·曼宁“,”Img“,”url“,”运动员“,”{“运动员”:“克里斯·保罗”,“Img”:“url”}];
const usedAthletes=[“佩顿·曼宁”、“托尼·霍克”、“汤姆·布雷迪”];
const result=u.与(gameData,usedatachletes,({athletor},othVal)=>athletor==othVal)的差异;
console.log(结果);
Lodash使用比较器创建一个数组值数组,该数组值不包括在其他给定数组中:

const gameData=[{“运动员”:“佩顿·曼宁”,“Img”:“url”},{“运动员”:“托尼·霍克”,“Img”:“url”},{“运动员”:“汤姆·布雷迪”,“Img”:“url”},{“运动员”:“乌塞恩·博尔特”,“Img”:“运动员”:“凯文·杜兰特”,“Img”:“url”},{“运动员”:“克里斯蒂亚诺·罗纳尔多”,“Img”:“url”},{“运动员”:“迈克尔·菲尔普斯”,“Img”:“url”},{“运动员”:“康纳·麦格雷戈”,“Img”:“运动员”},{“url”}“:”菲尔·米克尔森“,”Img“:”url“,”运动员“,”斯蒂芬·库里“,”Img“,”运动员“,”罗里·麦克罗伊“,”Img“,”url“,”运动员“,”迈克·特劳特“,”Img“,”运动员“,”丹尼卡·帕特里克“,”Img“:”url“,”运动员“,”德鲁·布里斯“,”Img“,”运动员“,”卡梅洛·安东尼“,”Img“,”url“,”运动员“,”莱恩·洛希特“,”Img“,”url“,”运动员“,”埃利·曼宁“,”Img“,”url“,”运动员“,”{“运动员”:“克里斯·保罗”,“Img”:“url”}];
const usedAthletes=[“佩顿·曼宁”、“托尼·霍克”、“汤姆·布雷迪”];
const result=u.与(gameData,usedatachletes,({athletor},othVal)=>athletor==othVal)的差异;
console.log(结果);

使用过滤器,后跟映射

const newAnswerlist = gameData
.filter(data => usedAthletes.indexOf(data.Athlete) !== -1)
.map(data => data.Athlete);
如果您也需要img信息,请仅使用过滤器

const newAnswerlist = gameData
.filter(data => usedAthletes.indexOf(data.Athlete) !== -1);

使用过滤器,后跟映射

const newAnswerlist = gameData
.filter(data => usedAthletes.indexOf(data.Athlete) !== -1)
.map(data => data.Athlete);
如果您也需要img信息,请仅使用过滤器

const newAnswerlist = gameData
.filter(data => usedAthletes.indexOf(data.Athlete) !== -1);
const gameData=[
{运动员:“佩顿·曼宁”,Img:“url”},
{运动员:“托尼·霍克”,Img:“url”},
{运动员:“汤姆·布雷迪”,Img:“url”},
{运动员:“乌塞恩·博尔特”,Img:“url”},
{运动员:“凯文·杜兰特”,Img:“url”},
{运动员:“克里斯蒂亚诺·罗纳尔多”,Img:“url”},
{运动员:“迈克尔·菲尔普斯”,Img:“url”},
{运动员:“康纳·麦格雷戈”,Img:“url”},
{运动员:“菲尔·米克尔森”,Img:“url”},
{运动员:“斯蒂芬·库里”,Img:“url”},
{运动员:“Rory McIlroy”,Img:“url”},
{运动员:“Mike Trout”,Img:“url”},
{运动员:“Danica Patrick”,Img:“url”},
{运动员:“Drew Brees”,Img:“url”},
{运动员:“卡梅洛·安东尼”,Img:“url”},
{运动员:“Ryan Lochte”,Img:“url”},
{运动员:“伊莱·曼宁”,Img:“url”},
{运动员:“克里斯·保罗”,Img:“网址”}
];
const usedAthletes=[“佩顿·曼宁”,“托尼·霍克”,