js二分法查找JSON对象数组

字段说明:

arr:数组,key:需要查找的值,field:JSON字段key

 //二分查找
  binarySearch(arr, key,field) {
    var low = 0,
      high = arr.length - 1;
    while (low <= high) {
      var mid = parseInt((high + low) / 2);
      if (key == arr[mid][field]) {
        return mid;
      } else if (key > arr[mid][field]) {
        low = mid + 1;
      } else if (key < arr[mid][field]) {
        high = mid - 1;
      } else {
        return -1;
      }
    }
  }
接口格式:[{},{},{}]

例:let logiListIndex = t.binarySearch(t.data.logiList,item.HYID,"HYID");
t.data.logiList json数组
item.HYID 需要查找的值
"HYID" JSON字段key
发布了74 篇原创文章 · 获赞 7 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_38188047/article/details/103524983