过滤2个数组,相等时不返回空

时间:2018-07-25 14:22:15

标签: javascript arrays

我有2个数组,我试图过滤掉第一个数组中不存在的对象。当前,当第二个不等于第一个时,它会正确过滤。如果两个数组相等,则需要返回一个空数组。有什么想法吗?

@Bean
@Primary
@ConfigurationProperties("spring.datasource.primary") 
public DataSourceProperties primaryDataSourceProperties() {
    return new DataSourceProperties();
}


@Bean
@Primary
@ConfigurationProperties("spring.datasource.primary.hikari")
public DataSource secondaryDataSource() {
     return createDataSource(primaryDataSourceProperties();
}

@SuppressWarnings("unchecked")
private <T> T createDataSource(DataSourceProperties properties, Class<? extends DataSource> type) {
    return (T) properties.initializeDataSourceBuilder().type(type).build();
}

@Bean
@ConfigurationProperties("spring.datasource.secondary") 
public DataSourceProperties secondaryDataSourceProperties() {
    return new DataSourceProperties();
}


@Bean
@ConfigurationProperties("spring.datasource.secondary.hikari")
public DataSource secondaryDataSource() {
      return createDataSource(primaryDataSourceProperties(), HikariDataSource.class);
}

1 个答案:

答案 0 :(得分:3)

您的逻辑有缺陷,您必须取消实际上应该为find的{​​{1}}调用:

some

相反的方法也可以:

 array1.filter(x => !array2.some(y => x.id === (y.id || y.token )));