반응형
이름에 점이 포함 된 경우 JSON 개체 값을 얻는 방법은 무엇입니까?
매우 간단한 JSON 배열이 있습니다 ( "points.bean.pointsBase" 개체 에 집중하십시오 ).
var mydata =
{"list":
[
{"points.bean.pointsBase":
[
{"time": 2000, "caption":"caption text", duration: 5000},
{"time": 6000, "caption":"caption text", duration: 3000}
]
}
]
};
// Usually we make smth like this to get the value:
var smth = mydata.list[0].points.bean.pointsBase[0].time;
alert(smth); // should display 2000
그러나 불행히도 아무것도 표시하지 않습니다. "points.bean.pointsBase" 를 이름에 점이없는 smth로
변경하면 모든 것이 작동합니다! 하지만이 이름을 점 없이는 다른 이름으로 변경할 수 없지만 값을 얻어야합니까?! 그것을 얻을 수있는 옵션이 있습니까?
당신이 원하는 것은 :
var smth = mydata.list[0]["points.bean.pointsBase"][0].time;
JavaScript에서. 연산자를 사용하는 경우 필드 이름의 문자열 버전과 함께 []를 사용하여 액세스 할 수 있습니다.
자바 스크립트에서 객체 속성은. 연산자 또는 []를 사용하는 연관 배열 인덱싱. 즉. object.property
다음과 같다object["property"]
이것은 트릭을해야한다
var smth = mydata.list[0]["points.bean.pointsBase"][0].time;
시험 ["points.bean.pointsBase"]
json 객체 키 / 이름에 점이 있으면 ......! 처럼
var myJson = {"my.name":"vikas","my.age":27}
다음과 같이 액세스 할 수있는 것보다
myJson["my.name"]
myJson["my.age"]
업데이트 된 솔루션을 사용하려면 lodash 유틸리티 https://lodash.com/docs#get을 사용해보십시오.
참고 URL : https://stackoverflow.com/questions/2577172/how-to-get-json-objects-value-if-its-name-contains-dots
반응형
'IT story' 카테고리의 다른 글
g ++로 정적 라이브러리를 만드는 방법은 무엇입니까? (0) | 2020.09.07 |
---|---|
Linux 기반 서버에서 ASP.Net 실행 (0) | 2020.09.06 |
Swift의 상태 표시 줄 높이 (0) | 2020.09.06 |
RxJava에서 Observable, Completable 및 Single의 차이점은 무엇입니까? (0) | 2020.09.06 |
NSOperationQueue가 모든 작업을 완료하면 알림 받기 (0) | 2020.09.06 |