2012-12-21 2 views
4

가능한 중복 :
javascript object, access variable property name?런타임에 사용자 정의 DOM 변경 사항을 적용 할 수 있습니까?

나는 물건을 학습, JS와 장난하고 내가 뭔가에 대해 궁금 ... 는 함수 aFunc()이 말, 당신은 동의 문자열 aFunc(val). 값은 사용자가 정의한 다음 요소의 CSS를 수정하는 데 사용됩니다. 예를 들어

:

function aFunc(val){ 
    document.getElementById('something').style.val = 'red'; 
} 

는, 사용자가 borderColor를 입력 valborderColor 어디에 든에 refrence 것 말. 나는 이것이 가능한지 또는 어떻게 될지 모른다.

편집 :가 더 eval() :

답변

4

그냥 기본으로 사용할주세요 : 자바 스크립트의 모든 객체가 문자열 값을 취 hasOwnProperty라는 방법이있다 JSBIN- Demo on a Div

var type = prompt("style"); 
var value = prompt("value"); 
document.body.style[type] = value; 
+2

정답! JavaScript에서 object.val은 object [ 'val']과 동일하므로 속성 이름에 변수를 사용하려면 "."대신 []을 사용하십시오. – masch

+0

감사합니다! 위대한 작품! – MichaelMitchell

+0

:) ............... –

2

및 부울 값을 반환합니다.

var myObj = { 
    name: "Josh" 
}; 

myObj.hasOwnProperty("name") === true; //This is true 

당신은 특정 속성의 유무를 테스트하고 그 속성에 액세스 Akhil Sekharan's answer에 명시된 방법을 사용하는 것을 사용할 수 있습니다.

관련 문제