如何在javascript中从数组中删除某些匹配条件的元素?
我有一个数组如何在javascript中从数组中删除某些匹配条件的元素?,javascript,Javascript,我有一个数组 const arr = ['apple', 'banana', 'pear', 'orange', 'peach']; 测试函数如下所示 function test(str) { return str.length >= 6; } 我可以用filter方法轻松找到元素。但是我想从数组中删除这些元素 结果应该是 ['apple', 'pear', 'peach'] Javascript有一个函数专门用于此: const arr=[“苹果”、“香蕉”、“梨”、“橘子”、
const arr = ['apple', 'banana', 'pear', 'orange', 'peach'];
测试函数如下所示
function test(str) {
return str.length >= 6;
}
我可以用filter
方法轻松找到元素。但是我想从数组中删除这些元素
结果应该是
['apple', 'pear', 'peach']
Javascript有一个函数专门用于此:
const arr=[“苹果”、“香蕉”、“梨”、“橘子”、“桃子”];
功能测试(str){
返回str.length>=6;
}
//我们需要否定结果,因为我们希望在test返回false的地方保留元素
console.log(arr.filter(x=>!test(x));
//日志:[‘苹果’、‘梨’、‘桃’]
在给定方法旁边
您可以利用函数式方法,该方法使用函数并重新运行函数的否定结果
功能测试(str){
返回str.length>=6;
}
功能不可用(fn){
返回(…args)=>!fn(…args);
}
常数
数组=[“苹果”、“香蕉”、“梨”、“橘子”、“桃子”],
结果=数组.filter(非(测试));
控制台日志(结果)代码>您当前的函数与您实际想到的函数有什么关系?您可以将其与您的函数一起使用。顺便说一句,您只需要返回条件returnstr.length>=6代码>arr.includes(['apple','pear','peach'])
?如果在数组中找到项,则返回true
或false
。@Red No不返回。它只是抛出了一个错误,因为在数组中没有inaray
方法。@Aplet123对不起,我是说includes;)
array.filter(string => !test(string))