0
문자열을 JSON 객체로 구문 분석 중이므로 객체의 속성을 반복적으로 반복 할 수 있어야합니다. 그래서 객체의 속성을 반복하는 함수를 만들려고합니다. 속성이 프리미티브가 아니면 속성 자체로 함수를 다시 호출합니다 (재귀).JsonObject의 속성을 반복적으로 반복하는 방법은 무엇입니까?
function forEachAttribute(object) {
for (let key in object) {
let attribute = object[key];
if (typeof attribute === "object") {
forEachAttribute(attribute);
} else {
console.log(key + ": " + attribute);
}
}
}
let myObject = {
innerObject: {
x: 123
},
y: 456
};
forEachAttribute(myObject);
를하지만 멀리 자바 스크립트에서 이동, 대신 코 틀린를 사용하는 방법을 배우려고 노력 해요 :
자바 스크립트에서 나는 이런 식으로 해결 것입니다. 그래서 a way to iterate through the attributes of a JSON object을 찾았습니다.
그러나 속성이 원시인지 여부를 결정하는 방법을 잘 모르겠습니다.
import kotlin.js.Json
fun iterateThroughAttributes(jsonObject: Json) {
for (key in js("Object").keys(jsonObject)) {
val attribute = jsonObject[key]
// How do I determine if the attribute is a primitive, or not?
}
}
fun main (args: Array<String>) {
val someString = "(some json string)"
val jsonObject = JSON.parse<Json>(someString)
iterateThroughAttributes(jsonObject)
}
누군가 도움을 줄 수 있습니까?