首页 > 其他 > 详细

forEach,map,filter,find,some,every区别

时间:2021-04-15 15:18:08      阅读:18      评论:0      收藏:0      [点我收藏+]
methods: {
    // filter()与find()使用方法也相同。同样都接收三个参数。不同的地方在于返回值。filter()返回的是数组,数组内是所有满足条件的元素,而find()只返回第一个满足条件的元素。如果条件不满足,filter()返回的是一个空数组,而find()返回的是undefined
    // const myArr=[1,2,3,4,5,6];
    // var v=myArr.find(value=>value>4);
    // console.log(v);// 5
    // 1.filter用法:过滤状态为‘启用‘的数据
    inactiveFn() {
      this.tableData = this.tableData.filter(item => {
        return item.blnisinactive === 0
        // 过滤编码大于‘1007‘的信息
        // return item.strprofesscode * 1 > 1007
      })
    },
    // 2.map用法:返回所有的职称
    namesFn() {
      this.names = this.tableData.map(item => {
        return item.strprofessname
      })
    },
    // 3.map用法:返回所有键值对id
    idsFn() {
      this.ids = this.tableData.map(item => {
        return { lngprofessid: item.lngprofessid }
      })
    },
    // 4.forEach用法:找到编码为‘1006‘职称,---注意 filter,some,find 结果一样
    strprofessnameFn() {
      this.tableData.forEach(item => {
        if (item.strprofesscode === ‘1006‘) {
          this.strprofessname.push(item.strprofessname) // 正厅级 院长
          // this.strprofessname = item.strprofessname// 显示的是最后一个
        }
      })
    },
    // 5.some用法:一个true则为true,every用法:所有true才为true
    // 做判断用,是否存在编码1009  some:返回true,every:返回false
    isHaveFn() {
      this.code1009 = this.tableData.some(item => {
        return item.strprofesscode === ‘1009‘
      })
    }
    // some用法:
    // let arr = [1,2,3,4];
    // let res = arr.some(item => item > 4)
    // console.log(res);   // false
    // every用法:
    // let arr = [1,2,3,4];
    // let res = arr.every(item => item > 0)
    // console.log(res);   // true
  }

forEach,map,filter,find,some,every区别

原文:https://www.cnblogs.com/hellofangfang/p/14662173.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!