2012-01-21 2 views
0

object에서 property에 액세스하려고합니다. 직접 경로을 입력하여 property에 액세스하면이를 검색 할 수 있지만 수행 할 때 동적으로이 아닙니다.JavaScript를 사용하여 inside 메서드에서 속성에 액세스하기

아래에서 놓친 내용이 있습니까?

var myApp = { 
    cache : {}, 
    init: function() { 
     myApp.cache.akey = 'A value'; // Set the cached value 
     myApp.get('cache', 'akey'); 
    }, 
    get: function(from, key) { 
     console.log(myApp.from.key); // undefined 
     console.log(myApp.cache.akey); // A value 
    } 
}; 

답변

1

'from'및 'key'인수는 예제에서 참조되지 않고 속성은 리터럴입니다.

myApp[from][key] 
0

도트 액세스, 리터럴하려고하면 변수 사용 첨자 표기법에 포함 된 문자열에 의해 싶어 접속 :

get: function(from, key) { 
    console.log(myApp[from][key]); // Assume from === "cache" and key === "akey", this accesses myApp.cache.akey 

} 
관련 문제