어떻게 자바 스크립트 객체를 통해 루프를 돌리고 원하는 객체 속성이 함수가 될 경우 해당 함수를 실행 하시겠습니까?
예를 들어, 아래 코드는 객체를 반복하고 일부 입력을 기반으로 속성을 출력합니다. 예제에서 command.first
은 정상적으로 출력하지만 command.clear
을 출력하려고하면 실제 함수가 문자열로 반환됩니다.
출력 : 특정 값이 Function
개체의 인스턴스 인 경우 "function(){ document.getElementById("output").innerHTML = "";"
메소드 속성이있는 자바 스크립트 객체 탐색
var command = new Object();
command.first = "First string";
command.clear = function() {
document.getElementById("output").innerHTML = "someStuff";
};
for(var key in command) {
if(key == input) {
document.getElementById("output").innerHTML = command[input];
}
}
기능을 실행하려면'()'이 필요합니다. 그것들이나'.call() '과 같은 일을한다. – vlaz
함수이기 때문에 함수를 출력한다. 귀하의 질문은 무엇인가? – zerkms
작동하는지 확인한 다음 코드를 확인하십시오. http://stackoverflow.com/questions/5999998/how-can-i-check-if-a-javascript-variable-is-function-type –