최근에 문제가 발생했습니다.
코드 사본은 다음과 같습니다.
var obj = { "name1": "Zhang San", "name2": "li si"};
var key = "name1";
var value = obj.key; // "undefined"get
value = obj.name1; // "Zhang San"get
실제로 키에 값을 동적으로 할당 한 다음 키의 값을 그대로 얻고 싶습니다. 그러나이 접근법은 작동하지 않습니다. obj.key는 OBJ의 "키"에 해당하는 값을 찾을 것이며 물론 찾을 수 없습니다.
그래서 나는 js에서 물체 특성을 가로 지르는 방법을 생각했다.
코드 사본은 다음과 같습니다.
함수 printObject (obj) {
// obj = { "cid": "c0", "ctext": "District and County"};
var temp = "";
for (obj in obj) {// javaScript for/in의 객체의 속성을 통한 루프
temp+= i+":"+obj [i]+"/n";
}
Alert (Temp); // 결과 : CID : C0/N CTEXT : 지구 및 카운티
}
이런 식으로, 당신은 JS의 객체의 키와 값이 무엇인지 명확하게 알 수 있습니다.
지금 질문으로 돌아가서 키에 값을 동적으로 할당 한 다음 OBJ.key에서 해당 값을 얻는 방법은 무엇입니까?
실제로 위의 printobject에는 프롬프트가 있습니다.
마지막으로, 평가 ( "obj."+key)를 수행 할 수있는 또 다른 방법이 있습니다.
요약 :
JS의 동적 키를 기반으로 특정 객체에서 해당 값을 얻는 두 가지 방법이 있습니다.
1. var key = "name1"; var value = obj [key];
2. var key = "name1"; var value = vale ( "obj."+key);