跟提供的值获取在对应数组中的下标、根据值获取下标

根据值获取在数组中对应的下标

  getArrayIndex(arr: any, obj: any) {
    let i = arr.length;
    while (i--) {
      if (arr[i] === obj) {
        return i;
      }
    }
    return i;
  }

这里的:any是ts代码规则可以省去

arr:对应的数组
obj:对应的具体值

例子:

  getArrayIndex(arr: any, obj: any) {
    let i = arr.length;
    while (i--) {
      if (arr[i] === obj) {
        return i;
      }
    }
    return i;
  }
  mounted() {
    let arr = ['A', 'B', 'C', 'D', 'E'];
    // 获取 E 在arr中的下标
    let i = this.getArrayIndex(arr, 'E');
    console.log(arr);
    console.log(i);
  }

获取到E在arr数组中的对应下标 为 4
在这里插入图片描述
那如果是要同时获取 A,B,C,D,E的下标呢 这里也好处理 循环一下就可以了
也就是说可以同时获取多个属性值得下标 也就是传递数组进去就可以了

  mounted() {
    let arr = ['A', 'B', 'C', 'D', 'E'];
    let index_arr: any = [];
    arr.forEach((item: any) => {
      let index = this.getArrayIndex(arr, item);
      index_arr.push(index);
    });
    console.log(index_arr);
  }

在这里插入图片描述

拿到我们想要的下标就可以做很多事情了
就比如 我要在下面的数组中获取 2015016,20151023下标对应的0.1629…,0.0564…这两个值就可以先获取到2015016,20151023的下标 在根据下标取获取0.1629…,0.0564…
在这里插入图片描述
这里在提供相应根据下标的获取具体的方法

  getAarryByIndex(index: any, Aarry: any) {
    let data = index.map((item: any) => {
      return Aarry[item];
    });
    return data;
  }

业务实际需求千变万化 不喜勿喷 这里主要跟大家分享 如何根据对应属性获取所对应的下标!

猜你喜欢

转载自blog.csdn.net/qq_41193701/article/details/108276878