JavaScipt30(第七个案例)(主要知识点:数组some,every,findIndex方法)

承接上文,这是第7个案例,这个案例没什么说的,主要有三个注意点:

附上项目链接: https://github.com/wesbos/JavaScript30

// 1. slice(begin, end) 如果end被省略,则slice会一直提取到原数组末尾。如果end大于数组长度,slice也会一直提取到原数组末尾。
// 2. {isAdult},直接创建了一个对象,他的key是isAdult,value是isAdult的值
// 3. new Date()).getFullYear()),我自己写的时候是直接写了2019去计算,还没形成看到日期就用日期方法的条件反射
const people = [
      { name: 'Wes', year: 1988 },
      { name: 'Kait', year: 1986 },
      { name: 'Irv', year: 1970 },
      { name: 'Lux', year: 2015 }
    ];

    const comments = [
      { text: 'Love this!', id: 523423 },
      { text: 'Super good', id: 823423 },
      { text: 'You are the best', id: 2039842 },
      { text: 'Ramen is my fav food ever', id: 123523 },
      { text: 'Nice Nice Nice!', id: 542328 }
    ];

    // Some and Every Checks
    // Array.prototype.some() // is at least one person 19?
    // const isAdult = people.some(function(person) {
    //   const currentYear = (new Date()).getFullYear();
    //   if(currentYear - person.year >= 19) {
    //     return true;
    //   }
    // });
    const isAdult = people.some(person => ((new Date()).getFullYear()) - person.year >= 19);
    console.log({isAdult});
    // Array.prototype.every() // is everyone 19?

    const allAdults = people.every(person => ((new Date()).getFullYear()) - person.year >= 19);
    console.log({allAdults});

    // Array.prototype.find()
    // Find is like filter, but instead returns just the one you are looking for
    // find the comment with the ID of 823423


    const comment = comments.find(comment => comment.id === 823423);

    console.log(comment);

    // Array.prototype.findIndex()
    // Find the comment with this ID
    // delete the comment with the ID of 823423
    const index = comments.findIndex(comment => comment.id === 823423);
    console.log(index);

    // comments.splice(index, 1);

    const newComments = [
        ...comments.slice(0, index),
        ...comments.slice(index + 1)
    ];

 

posted @ 2019-04-03 11:15  来亦何哀  阅读(172)  评论(0编辑  收藏  举报