Nie mogę pobrać wartości z obiektu json, gdy ciąg ma znak myślnika:
{
"profile-id":1234, "user_id":6789
}
Jeśli spróbuję odwołać się do przeanalizowanych jsonObj.profile-id
, zwraca, ReferenceError: "id" is not defined
ale jsonObj.user_id zwróci 6789
Nie mam sposobu na zmodyfikowanie wartości zwracanych przez zewnętrzne wywołanie interfejsu API, a próba przeanalizowania zwróconego ciągu w celu usunięcia myślników zrujnuje adresy URL itp., Które również są przekazywane. Wsparcie?
javascript
json
user1902467
źródło
źródło
Utilities.jsonParse
niewiele mówi.Odpowiedzi:
jsonObj.profile-id
jest wyrażeniem odejmującym (tjjsonObj.profile - id
.).Aby uzyskać dostęp do klucza zawierającego znaki, które nie mogą pojawić się w identyfikatorze, użyj nawiasów:
źródło
document.getElementById("someId").style["box-shadow"]="2px 2px 2px #616161";
działa świetnie!style.boxShadow
. Wstyle
nawróceni obiektów łączniki do CamelCase.Oprócz tej odpowiedzi zwróć uwagę, że w Node.js, jeśli uzyskujesz dostęp do JSON za pomocą składni tablicy
[]
wszystkie zagnieżdżone klucze JSON powinny mieć tę składnięTo jest zły sposób
i wyświetli błąd „nieokreślony”.
To jest właściwy sposób
źródło
W przypadku ansibla i używania łącznika zadziałało to:
źródło