首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Node.js:从Elasticsearch查询中解析JSON对象

Node.js:从Elasticsearch查询中解析JSON对象
EN

Stack Overflow用户
提问于 2017-07-11 13:19:06
回答 1查看 1.3K关注 0票数 0

我有一个通过node.js客户端访问的elasticsearch数据库。我可以解析来自elasticsearch的JSON来打印出如下所示的hitsArray:

代码语言:javascript
运行
复制
[ { _index: 'parties',
    _type: 'suppliers',
    _id: 'AV0uELknL82XeGsCOZ-i',
    _score: 1,
    _source: { name: 'Jabil', address: [Object], rating: 4.2 } },
  { _index: 'parties',
    _type: 'suppliers',
    _id: 'AV0t_yC3L82XeGsCOZ-f',
    _score: 1,
    _source: { name: 'Apple', address: [Object], rating: 4.9 } },
  { _index: 'parties',
    _type: 'suppliers',
    _id: 'AV0t_glkL82XeGsCOZ-d',
    _score: 1,
    _source: { name: 'Flextronics', address: [Object], rating: 4.5 } },
  { _index: 'parties',
    _type: 'suppliers',
    _id: 'AV0t_ox7L82XeGsCOZ-e',
    _score: 1,
    _source: { name: 'FlashMob', address: [Object], rating: 3.5 } } ]

现在,我想解析_source字段并打印出name字段

代码语言:javascript
运行
复制
client.search(searchParams).then(function (resp) {
    return Promise.all(resp.hits.hits)
  }).then(function(hitsArray){
    hitsArray.forEach(function(value){
      JSONObject first = hitsArray.getJSONObject(value);
      JSONObject source = first.getJSONObject("_source");
      String name = source.getString("name");
      console.log(name);
    });
  });

但是我得到了一个错误

代码语言:javascript
运行
复制
JSONObject first = hitsArray.getJSONObject(value);
               ^^^^^
SyntaxError: Unexpected identifier

我遗漏了什么?有什么建议吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-07-11 13:24:48

JavaScript没有这样的显式类型定义。看起来这3行可能是Java代码,而不是JavaScript代码。

就获取实际的JavaScript值而言,它似乎已经是一个对象。只需使用value._source (和value._source.name)访问即可。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45025954

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档