您的当前位置:首页用一行代码取出数组对象中大于3的元素

用一行代码取出数组对象中大于3的元素

2024-12-14 来源:哗拓教育

在技术交流群中有人出了一道题,题目如下:

用一行代码取出var arr = [{id: 1},{id:2},{id:3},{id: 4}];中id>3的元素,组成一个新数组。

当时觉得挺简单,自己是这么写的:

var arr = [{id:1},{id:2},{id:3},{id:4}];
var newarr=[];
arr.forEach(function(item,index) {arr[index].id < 3 ? newarr.push(arr[index]):void 0;})

然后看到群里有人用更少的代码写了出来,如下:

var arr = [{id: 1},{id:2},{id:3},{id: 4}];
var newArr = arr.filter(item => item.id < 3);

很棒,ES6箭头函数活学活用,连filter()方法也是看到人家写才想起来
话说虽然自己也看了阮一峰老师的《ES6标准入门》,但是 ⊙﹏⊙Emmmm

把上面提到的知识点列一下,在记忆一遍~

filter()方法使用指定的函数测试所有元素,并创建一个包含所有通过测试的元素的新数组。
filter()基本语法:arr.filter(callback[, thisArg])
filter()实例:筛选排除掉所有的小值​
       function isBigEnough(element) {
           return element >= 10;
       }
       var filtered = [12, 5, 8, 130, 44].filter(isBigEnough);
       // filtered is [12, 130, 44]
ES6箭头函数
    // ES5写法
    $("#confetti-btn").click(function (event) {
      playTrumpet();
      fireConfettiCannon();
    });

    // ES6写法
    $("#confetti-btn").click(event => {
      playTrumpet();
      fireConfettiCannon();
    });
显示全文