JSON 객체를 체크인하는 방법은 입력 경로가 있는지 여부입니다.객체 내부에서 JSON 경로 찾기
var obj = {
"schemaOne": {
"name": "abc",
"Path": "i.abc",
"count": 5347,
"subFolders": [
]
},
"schemaTwo": {
"name": "cde",
"Path": "i.cde",
"count": 0,
"subFolders": [
{
"name": "efg",
"Path": "",
"count": 0,
"subFolders": [
]
},
{
"name": "hij",
"Path": "i.hij",
"count": 1,
"subFolders": [
]
}
]
}
}
var inputpath = "obj.count";
몇 가지 조사를 한 후에 나는 아래의 코드를 발견했습니다. 이 코드에서 o.Path
은 사용자에게 알려져 있습니다. 하지만 코드를 수정하여 동적으로 obj.count
이 JSON 객체에 있는지 여부를 확인하고 싶습니다.
function upd(o, path, count) {
if (o.Path == path) {
o.count = count;
} else {
var arr;
if (Array.isArray(o)) arr = o;
else if (o.subFolders) arr = o.subFolders;
else return;
for(var j=0; j < arr.length; j++) {
upd(arr[j], path, count);
}
}
}
JSON은 어디에 있나요? – Teemu
@Teemu obj 변수에는 JSON 객체 – user87267867
이 들어 있습니다. 아니요, 'obj'는 JavaScript 객체이므로 데이터 교환 형식과 아무 관련이 없습니다. – Teemu