Possible Duplicate:
Length of Javascript Object (ie. Associative Array)

我有一个类似于这个的物体:

var jsonArray = {
  '-1': {
    '-1': 'b',
    '2': 'a',
    '10': 'c'
  },
  '2': {
    '-1': 'a',
    '2': 'b',
    '10': 'a'
  },
  '5': {
    '-1': 'a',
    '2': 'a',
    '10': 'b'
  }
};

I'm trying to get it's length, the problem is that jsonArray.length returns 5 instead of 3 (which is the total items it has). The array is relatively long (has 1000x2000 items) and this must be done a lot of times every second. How can I get the number of items more efficiently?

推荐答案

显然,除了基兰的答案之外,现代浏览器还有Object.keys的功能.在这种情况下,您可以执行以下操作:

Object.keys(jsonArray).length;

More details in this answer on How to list the properties of a javascript object

Json相关问答推荐

使用 jq 将键值行转换为 json

如何用 Xidel 正确读取这个 JSON 文件?

N1QL 搜索对象内的某些对象

解析 JSON API 响应

Powershell JSON 操作

hook到 Decodable.init() 以获得未指定的键?

C# 合并 2 个几乎相同的 JSON 对象

json对象的大小? (以 KB/MB 为单位)

Protocol Buffer vs Json - 何时选择一个而不是另一个

JSON.parse 返回字符串而不是对象

如何为所有 API 端点全局设置 http.ResponseWriter Content-Type 标头?

将 JSON 导出到环境变量

pandas.io.json.json_normalize 带有非常嵌套的 json

如何将 FormData(HTML5 对象)转换为 JSON

如何删除json对象键和值.?

在 Spring Boot 中返回 JSON 对象作为响应

Swift 4 可编码;如何使用单个根级密钥解码对象

如何将 Swift 对象序列化或转换为 JSON?

如何从 Python 中的文件/流中懒惰地读取多个 JSON 值?

REST API - 文件(即图像)处理 - 最佳实践