1

オブジェクトがあり、それをループして、そのプロパティのすべての値を出力したいと考えています。私の問題は、そのメソッドのいずれかによって返された値を出力しようとすると、メソッドが返す値ではなく、メソッドのコードを取得することです。私はアクセス構文のタイプミスをしていると確信していますが、それを理解できません。

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/

4

1 に答える 1