0

オブジェクトのプロパティを関数に渡しています。このプロパティはたまたま配列です。

object.color[]

このプロパティが属するオブジェクトの名前を取得できる方法はありますか?

オブジェクトとプロパティの両方を関数に渡すのではなく、それを行いたいと思います。

4

4 に答える 4

1

できません。オブジェクトのみを渡し、関数内のプロパティにアクセスしないのはなぜですか?

var object = {};

object.color = ['red', 'green', 'blue']

doStuff(object);

function doStuff(obj) {
    obj.color.push['purple'];
}
于 2012-05-21T21:52:37.423 に答える
0

いいえ、できません。JavaScript オブジェクト (この場合は配列) には、DOM ノードのような「親」はありません。オブジェクトを関数に渡すと、関数はオブジェクトのみを認識し、それ以外は認識しません。

var myob = { color: ["abc", "def"] };
myfunc(myob.color);

に等しい

var myarr = ["abc", "def"];
myfunc(myarr);

に等しい

myfunc(["abc", "def"]);

- に違いはありませんmyfunc

于 2012-05-21T21:50:26.090 に答える
0

いいえ、オブジェクト全体を渡す必要があります。このプロパティを囲むオブジェクトの名前が必要なのはなぜですか? あなたはそれで何をしますか?複数の変数が同じオブジェクトを指し、複数のオブジェクトが同じ配列を指している可能性があることをご存知ですか?

var object2.color = object1.color;

両方とも同じ配列を参照object1している場合。object2color

于 2012-05-21T21:48:21.260 に答える
0

いいえ、プロパティからオブジェクト名を取得することはできません。

オブジェクトを渡して、関数内でそのプロパティを取得してみませんか?

于 2012-05-21T21:48:53.017 に答える