查找对象的值

时间:2017-07-17 06:12:16

标签: javascript json jsonschema

我有一个像哈希表一样的对象。

var ob = {
  "Earnings": {
    "name": "Finance",
    "id": "0"
  },

  "Total": {
    "token_id": 90,
    "Token": {
      "name": "E32"
    }
  }
}

现在重点是我不是ob的关键。

我有价值:

{
  "token_id": 90,
  "Token": {
    "name": "E32"
  }
}
}

我需要找到ob 中的值是否有效。我曾尝试过像这样的循环方法。

for (var key in ob) {
  if (ob.HasOwnProperty(key)) {
    //check for the value
  }
}

这种方法适用于小数据,但对于大数据则需要时间。 那么,有没有什么方法可以通过在O(1)时间内获取(搜索)来解决这个用例?

1 个答案:

答案 0 :(得分:1)

我只能想到将json中的值转换为Set对象

JavaScript implementation of a set data structure

当您查询该集时,当您将其转换为集合O(1)时,它将O(n)摊销。

或者您可以交换值和键并放入一些人为javascript实现的HashMap。