Javascript lodash groupBy()如何区分基于JSON的带键和不带键?

Javascript lodash groupBy()如何区分基于JSON的带键和不带键?,javascript,json,ecmascript-6,underscore.js,lodash,Javascript,Json,Ecmascript 6,Underscore.js,Lodash,lodashgroupBy()的结果应该给出{“withType”:[],“withOutType”:[]} const splittedData = _.groupBy(datas, 'type', 'withOutType'); 是否可以根据JSON中是否存在typekey来区分为两组 const data=[{u id:“5EA2ECDBDE53C090B4BA4 FA12”,名字:“Dillon”,姓氏:“Mclaughlin”,guid:“a727438f-4ddc-4422-af

lodash
groupBy()
的结果应该给出
{“withType”:[],“withOutType”:[]}

const splittedData = _.groupBy(datas, 'type', 'withOutType');
是否可以根据JSON中是否存在
type
key来区分为两组

const data=[{u id:“5EA2ECDBDE53C090B4BA4 FA12”,名字:“Dillon”,姓氏:“Mclaughlin”,guid:“a727438f-4ddc-4422-af4a-c7396fda73c3”,isActive:true,余额:“$3331.33”,图片:http://placehold.it/32x32“,年龄:37岁,输入:“学生”},{id:“5EA2ECDB067A8AD1CB1F9E62”,名字:“弗莱明”,姓:“奥斯汀”,guid:“e228bbea-ef6b-4709-995c-bf485fa3665c”,isActive:true,余额:“$1869.92”,图片:http://placehold.it/32x32“,年龄:35岁,输入:“教师”},{u id:“5EA2ECDBD0D1A074B255A1349”,名字:“考夫曼”,姓:“阿尔福德”,guid:“176fb7fe-b7bc-4574-8887-4252A0424A”,isActive:true,余额:“$2163.34”,图片:http://placehold.it/32x32,年龄:29岁,输入:“学生”},{U id:“5EA2ECDBD1162EE44119AA0D3”,名字:“赛克斯”,姓:“佩蒂”,guid:“92b13963-7d32-469c-be80-c88728a7842a”,isActive:false,余额:“$2728.46”,图片:http://placehold.it/32x32“,年龄:37},{身份证:“5EA2ECDBD297854A2F85909A4”,名字:“斯图尔特”,姓氏:“皮克特”,guid:“322031f9-1a71-44ae-b1cf-cbe7430b78b6”,活动:假,余额:“1725.25美元”,图片:http://placehold.it/32x32,年龄:25岁,输入:“学生”},{u id:“5EA2ECDBD6EF4A9BEE37A223A”,名字:“Berg”,姓氏:“Hewitt”,guid:“ab05bed9-29e4-4570-aa12-fead954417b0”,isActive:false,余额:“$2935.72”,图片:http://placehold.it/32x32“,年龄:31}];
const splittedData=uu.groupBy(数据'type','noneType');
console.log(拆分数据);

我看到这样的解决方案:

const splits = [
    [...datas.filter(element => element.type)],
    [...datas.filter(element => !element.type)]
]

我看到这样的解决方案:

const splits = [
    [...datas.filter(element => element.type)],
    [...datas.filter(element => !element.type)]
]

您可以将函数作为第二个参数提供给
.groupBy()
,如果当前对象具有
type
属性(使用选中),则该函数将返回
'withType'
,如果当前对象没有:

const data=[{{u id:“5ea2ecdbde53c090b4ba4fa12”,名字:“Dillon”,姓氏:“Mclaughlin”,guid:“a727438f-4ddc-4422-af4a-c7396fda73c3”,isActive:true,余额:“$3331.33”,图片:http://placehold.it/32x32“,年龄:37岁,输入:“学生”},{id:“5EA2ECDB067A8AD1CB1F9E62”,名字:“弗莱明”,姓:“奥斯汀”,guid:“e228bbea-ef6b-4709-995c-bf485fa3665c”,isActive:true,余额:“$1869.92”,图片:http://placehold.it/32x32“,年龄:35岁,输入:“教师”},{u id:“5EA2ECDBD0D1A074B255A1349”,名字:“考夫曼”,姓:“阿尔福德”,guid:“176fb7fe-b7bc-4574-8887-4252A0424A”,isActive:true,余额:“$2163.34”,图片:http://placehold.it/32x32,年龄:29岁,输入:“学生”},{U id:“5EA2ECDBD1162EE44119AA0D3”,名字:“赛克斯”,姓:“佩蒂”,guid:“92b13963-7d32-469c-be80-c88728a7842a”,isActive:false,余额:“$2728.46”,图片:http://placehold.it/32x32“,年龄:37},{身份证:“5EA2ECDBD297854A2F85909A4”,名字:“斯图尔特”,姓氏:“皮克特”,guid:“322031f9-1a71-44ae-b1cf-cbe7430b78b6”,活动:假,余额:“1725.25美元”,图片:http://placehold.it/32x32,年龄:25岁,输入:“学生”},{u id:“5EA2ECDBD6EF4A9BEE37A223A”,名字:“Berg”,姓氏:“Hewitt”,guid:“ab05bed9-29e4-4570-aa12-fead954417b0”,isActive:false,余额:“$2935.72”,图片:http://placehold.it/32x32“,年龄:31}];
const splittedData=u0.groupBy(数据,o=>0.has(o,'type')?'withType':'withoutType');
console.log(拆分数据);

您可以将函数作为第二个参数提供给
.groupBy()
,如果当前对象具有
类型属性(使用选中),则该函数将返回
'withType'
,如果当前对象没有:

const data=[{{u id:“5ea2ecdbde53c090b4ba4fa12”,名字:“Dillon”,姓氏:“Mclaughlin”,guid:“a727438f-4ddc-4422-af4a-c7396fda73c3”,isActive:true,余额:“$3331.33”,图片:http://placehold.it/32x32“,年龄:37岁,输入:“学生”},{id:“5EA2ECDB067A8AD1CB1F9E62”,名字:“弗莱明”,姓:“奥斯汀”,guid:“e228bbea-ef6b-4709-995c-bf485fa3665c”,isActive:true,余额:“$1869.92”,图片:http://placehold.it/32x32“,年龄:35岁,输入:“教师”},{u id:“5EA2ECDBD0D1A074B255A1349”,名字:“考夫曼”,姓:“阿尔福德”,guid:“176fb7fe-b7bc-4574-8887-4252A0424A”,isActive:true,余额:“$2163.34”,图片:http://placehold.it/32x32,年龄:29岁,输入:“学生”},{U id:“5EA2ECDBD1162EE44119AA0D3”,名字:“赛克斯”,姓:“佩蒂”,guid:“92b13963-7d32-469c-be80-c88728a7842a”,isActive:false,余额:“$2728.46”,图片:http://placehold.it/32x32“,年龄:37},{身份证:“5EA2ECDBD297854A2F85909A4”,名字:“斯图尔特”,姓氏:“皮克特”,guid:“322031f9-1a71-44ae-b1cf-cbe7430b78b6”,活动:假,余额:“1725.25美元”,图片:http://placehold.it/32x32,年龄:25岁,输入:“学生”},{u id:“5EA2ECDBD6EF4A9BEE37A223A”,名字:“Berg”,姓氏:“Hewitt”,guid:“ab05bed9-29e4-4570-aa12-fead954417b0”,isActive:false,余额:“$2935.72”,图片:http://placehold.it/32x32“,年龄:31}];
const splittedData=u0.groupBy(数据,o=>0.has(o,'type')?'withType':'withoutType');
console.log(拆分数据);

您可以检查对象中是否存在
类型
,并获得一个按
分组的对象

const data=[{u id:“5EA2ECDBDE53C090B4BA4 FA12”,名字:“Dillon”,姓氏:“Mclaughlin”,guid:“a727438f-4ddc-4422-af4a-c7396fda73c3”,isActive:true,余额:“$3331.33”,图片:http://placehold.it/32x32“,年龄:37岁,输入:“学生”},{id:“5EA2ECDB067A8AD1CB1F9E62”,名字:“弗莱明”,姓:“奥斯汀”,guid:“e228bbea-ef6b-4709-995c-bf485fa3665c”,isActive:true,余额:“$1869.92”,图片:http://placehold.it/32x32“,年龄:35岁,输入:“教师”},{u id:“5EA2ECDBD0D1A074B255A1349”,名字:“考夫曼”,姓:“阿尔福德”,guid:“176fb7fe-b7bc-4574-8887-4252A0424A”,isActive:true,余额:“$2163.34”,图片:http://placehold.it/32x32,年龄:29岁,输入:“学生”},{U id:“5EA2ECDBD1162EE44119AA0D3”,名字:“赛克斯”,姓:“佩蒂”,guid:“92b13963-7d32-469c-be80-c88728a7842a”,isActive:false,余额:“$2728.46”,图片:http://placehold.it/32x32“,年龄:37},{身份证:“5EA2ECDBD297854A2F85909A4”,名字:“斯图尔特”,s