簡體   English   中英

如何在JSON路徑中轉義@符號

[英]How to escape @ symbol in JSON Path

這是我的JSON對象Obj3:

{
    "cars": {
        "Nissan": [
            {"model":"Sentra", "@doors":4},
            {"model":"Maxima", "@doors":4},
            {"model":"Skyline", "@doors":2}
        ],
        "Ford": [
            {"model":"Taurus", "@doors":4},
            {"model":"Escort", "@doors":4}
        ]
    }
}

我在門前的@符號有問題。 如果我沒有@符號(即鍵只是門),則可以使用類似以下的內容作為if語句:

console.log(JSONPath(JSONPath.toPathString(['$', 'cars', 'Nissan[?(@.doors==4)]']),obj2));

返回:

{ model: 'Sentra', doors: 4 }, { model: 'Maxima', doors: 4 } ]

誰能建議我需要如何更改此值以將@doors用作門而不是Door?

嘗試使用\\ x40轉義,但沒有成功

以下JSON Path表達式可以解決問題:

$.cars.Nissan[?(@['@doors'] == 4)]

暫無
暫無

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

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