-1

我正在尝试通过传递值的引用来检索索引。

我有一些 javascript 选项,但所有这些功能都显示is not a function

得到如下错误:

TypeError | jsonData.getIndexOf is not a function

我尝试了以下链接中提到的选项:

从具有值的 JSON 对象中获取索引

例子:

var jsonData = JSON.parse(responseBody);

Array.prototype.getIndexOf = function(el) {

  var arr = this;

  for (var i=0; i<arr.length; i++){
     console.log(arr[i].name);
     if(arr[i].name==el){
       return i;
     }

  }

  return -1;

}

console.log(jsonData.getIndexOf("Volume"));

对象截图:

在此处输入图像描述

邮递员/纽曼有可能吗

4

1 回答 1

0

我成功使用了这个更新的代码:

var jsonData = JSON.parse(responseBody);

//I would use an Object prototype here, because jsonData is an object
Object.prototype.getIndexOf = function(el) {
  var arr = this;
  
  for (var i=0; i<arr.length; i++){
      //when you're checking to see if a key exists, it is better to use the "in" operator
     if(el in arr[i]){
       return i;
     }
  }

  return -1;
}

//make sure the case matches
console.log(jsonData.getIndexOf("Volume"));

于 2017-12-15T19:50:59.727 回答