Javascript 객체 값을 동적으로 설정하는 방법은 무엇입니까?
사례를 말로 설명하기는 어렵습니다. 예를 들어 보겠습니다.
var myObj = {
'name': 'Umut',
'age' : 34
};
var prop = 'name';
var value = 'Onur';
myObj[name] = value; // This does not work
eval('myObj.' + name) = value; //Bad coding ;)
JavaScript 객체에서 변수 값으로 변수 속성을 어떻게 설정할 수 있습니까?
myObj[prop] = value;
작동합니다. 변수의 이름과 값을 섞었습니다. 그러나 속성을 얻기 위해 문자열로 객체를 인덱싱하는 것은 JavaScript에서 잘 작동합니다.
myObj.name=value
또는
myObj['name']=value (Quotes are required)
둘 다 서로 바꿔 사용할 수 있습니다.
편집 :myObj[prop] = value
myObj [name] = value 대신 을 의미한다고 생각합니다 . 두 번째 구문이 잘 작동합니다 : http://jsfiddle.net/waitinforatrain/dNjvb/1/
설정 한 것과 동일한 방식으로 속성을 얻을 수 있습니다.
foo = {
bar: "value"
}
값을 설정합니다. foo["bar"] = "baz";
가치를 얻으려면 foo["bar"]
"baz"를 반환합니다.
값 객체 (vo)와 유사한 것을 만들 수도 있습니다.
SomeModelClassNameVO.js;
function SomeModelClassNameVO(name,id) {
this.name = name;
this.id = id;
}
당신이 할 수있는 것보다;
var someModelClassNameVO = new someModelClassNameVO('name',1);
console.log(someModelClassNameVO.name);
myObj
가지고있는대로 객체를 만들 때 더 사전과 비슷하다고 생각하십시오. 이 경우 두 개의 키 name
, 및 age
.
다음 두 가지 방법으로 이러한 사전에 액세스 할 수 있습니다.
- 배열 (예 :)
myObj[name]
; 또는 - 속성 (예 :)
myObj.name
; 일부 속성은 예약되어 있으므로 첫 번째 방법이 선호됩니다.
아무 문제없이 속성으로 액세스 할 수 있어야합니다. 그러나 배열로 액세스하려면 키를 문자열처럼 처리해야합니다.
myObj["name"]
그렇지 않으면 자바 스크립트가 name
변수 라고 가정하고 라는 변수를 만들지 name
않았기 때문에 원하는 키에 액세스 할 수 없습니다.
이렇게 간단하다 myObj.name = value;
참고 URL : https://stackoverflow.com/questions/6439915/how-to-set-a-javascript-object-values-dynamically
'program tip' 카테고리의 다른 글
PostgreSQL에서 정렬을 사용하여 고정 된 수의 행을 삭제하려면 어떻게해야합니까? (0) | 2020.09.03 |
---|---|
바이너리 파일 읽기 및 쓰기 (0) | 2020.09.03 |
React의 다른 return 문에서 JSX 여러 줄을 반환하는 방법은 무엇입니까? (0) | 2020.09.03 |
오류 5 : Windows 서비스를 시작할 때 액세스가 거부되었습니다. (0) | 2020.09.03 |
Razor를 사용한 Html.RenderPartial () 구문 (0) | 2020.09.03 |