-1

インスタンス化されたオブジェクトのプロパティをJavaScript関数のパラメーターとして渡すにはどうすればよいですか。オブジェクトの同じプロパティを常に使用するように強制されるように、これを実行したいと思います。

どうすればよいですか?

//object
var house = {
    bed:"",
    chair:"",
    tv,""

};

//function
var doThis = function(OBJ){

    //pass this OBJ to something
    alert(OBJ.bed);
    alert(OBJ.chair);
    alert(OBJ.tv);


};


//call function
doThis({new house.bed = "a", new house.chair="c", new house.tv = "f"});

doThis({new house.bed = "dd", new house.chair="gg", new house.tv = "jjjh"});

doThis({new house.bed = "ff", new house.chair="hh", new house.tv = "hhh"});

doThis({new house.bed = "gg", new house.chair="jjj", new house.tv = "hh"});
4

3 に答える 3

2

問題を完全には理解していませんが、コードに構文エラーが含まれているため、関数の呼び出しは次のようになります。

doThis({bed: "a", chair: "c", house: "f"});
于 2012-07-25T07:51:09.697 に答える
2

あなたのコードはjavascriptからかなり離れていますが、これを行うことができます:

function House(bed, chair, tv) {
    this.bed = bed;
    this.chair = chair;
    this.tv = tv;
}
doThis(new House("a", "c", "f"));
doThis(new House("dd", "gg", "asd"));
于 2012-07-25T07:52:55.093 に答える
1

doThisが定義されていないことを除いて、Esailijaが言ったように、次のようなものを使用します。

function House(bed,chair,tv){
    var obj = {};
    obj.bed = (bed) ? bed : "";
    obj.chair = (chair) ? chair : "";
    obj.tv = (tv) ? tv : "";
    return obj;
  }

  var myHouse = new House('water bed');
于 2012-07-25T07:57:07.633 に答える