JavaScript - 数组的filter()方法

Posted WHOVENLY

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript - 数组的filter()方法相关的知识,希望对你有一定的参考价值。

定义

定义:filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。

注意:
1.filter() 不会对空数组进行检测。
2.filter() 不会改变原始数组。

语法

array.filter(function(currentValue,index,arr), thisValue)
参数说明:

参数描述
function(currentValue, index,arr)必须。函数,数组中的每个元素都会执行这个函数
thisValue可选。对象作为该执行回调时使用,传递给函数,用作 “this” 的值。

如果省略了 thisValue ,“this” 的值为 “undefined”

用途

1.返回奇数

//   返回奇数
let arr = [2,3,4,6,9,10]
let newArr = arr.filter(function(value,index,array){
    return value % 2 != 0;
})
console.log(newArr)//[3,9]

2.数组去重

function duplicate(arr) {
    return arr.filter(function (value, index, arr) {
        return arr.indexOf(value, 0) === index;
    });
}
var arr = [1, 1, 3, 7, false, false, true];
console.log(duplicate(arr));
// [1, 3, 7,false,true]

欢迎反馈文中表述不准确的地方或是不足之处~

以上是关于JavaScript - 数组的filter()方法的主要内容,如果未能解决你的问题,请参考以下文章

JavaScript查漏补缺 —数组中filter()方法

javascript的数组之filter()

如何使用 filter()、map() 处理数组的值? JavaScript

JavaScript中map函数和filter的简单举例(转)

filter方法

JavaScript对象数组如何按指定属性和排序方