如何使用array.map函数返回任何内容(空数组)

Ang*_*lar 8 javascript arrays array-map

现在,如果检测到列表中的"Everything",则输出变为[""].
预期产出:[]

Copy.names = rule.names.map(function(x) {                                
    if (x.name ==='Everything') {                                   
        return '';
    } else {
        return x.name;
    }
});
Run Code Online (Sandbox Code Playgroud)

小智 11

Array.filter() 的另一种解决方案:

names.map(
  (x) => x.name === 'Everything' && x.name
).filter(Boolean)
Run Code Online (Sandbox Code Playgroud)


Dyl*_*lon 10

使用Array.prototype.filter:

Copy.names = rule.names.filter(function(x) {                                
    return x.name !=='Everything';
}).map(function (x) {
    return x.name;
});
Run Code Online (Sandbox Code Playgroud)