簡體   English   中英

oboe.js-選擇特定節點而不是全部匹配的模式?

[英]oboe.js - pattern to select specific node rather than all matching?

我有一個通過http流獲取的JSON數組。 簡化后,對象的結構如下:

{
  "ID" : 1234,
  "Item" : {
    "ID" : "ABC123",
    "name" : "a thing"
  }
}

這些對象位於一個數組中,因此實際上我得到了:

[{"ID":1234,"Item":{"ID":"ABC123","name":"a thing"}},{"ID":5678,"Item"....]

我正在使用oboe.js解析流到達時的流,並使用ID做其他事情,但是我很難將ID與對象中的Item.ID區分開。 例如,此代碼段將匹配兩個ID

oboe(res).on("node", { "ID": function (id) {
        console.log("found thing with ID of " + id);
}});

輸出確認它正在獲取兩個ID值,而不僅僅是第一個,這就是我需要的:

found thing with ID of 1234 
found thing with ID of a thing

我嘗試使用以下模式,但沒有成功:

  • ID兩者都匹配
  • !.ID都不匹配
  • *.ID兩者都匹配
  • .ID兩者都匹配
  • ID. -兩者都匹配

tldnr:我正在努力找到正確的模式,該模式表示“將名為ID的節點與流中對象的根匹配,並忽略該對象中的任何其他對象”。

如OP的問題的注釋中所述: !*.ID應該匹配數組中的節點對象ID屬性。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM