나는 객체를 가지고 있으며, 그 객체를 반복하여 그 속성의 모든 값을 인쇄하고 싶습니다. 내 문제는 해당 메서드 중 하나에 의해 반환 된 값을 인쇄 할 때 메서드 반환해야하는 값 대신 메서드의 코드를 가져옵니다. 내가 액세스 구문을 오타 만들고있어,하지만 난 그것을 알아낼 수 없습니다.JavaScript에서 객체의 메소드에 의해 반환 된 값에 접근하기
function Dog (breed,sound) {
this.breed = breed;
this.sound = sound;
this.bark = function(){
alert(this.sound);
return this.sound;
};
}
var x = new Dog("Retriever",'woof');
x.bark(); // Test: 'woof'
for (var y in x) {
document.getElementById("results").innerHTML +="<br/>"+x[y];
}
/* x[y] when y is 'bark' returns the method's code,
but I'm looking for the value. */
JSFiddle : 당신을 위해이 작품 같은 http://jsfiddle.net/nysteve/QHumL/4/
이 함수 그리고 당신은 아직도 혼동하고있어 말 –
에()를 호출해야하는, 그래서 방법은 루프 - 그리고 밖으로 인쇄 - 특수이 객체의 속성을 통해 루프가 없기 때문에 일부 속성이 값을 반환하는 메서드 일 때의 값? – brooklynsweb
함수의 this (x [y] instanceof)를 사용 하시겠습니까? x [y]() : x [y]); –