0

これはおそらく単純な問題ですが、状態が完全に分離されている必要がある「クラス」の N インスタンスに相当する JavaScript を作成する必要があります。

お気に入り:

var car = new Car('Ford');
var car = new Car('Toyota');

どうすればこれを達成できますか?

4

2 に答える 2

5

配列オブジェクトを使用してそれらを保存できます。

var cars = [];

cars.push(new Car('Ford'));
cars.push(new Car('Toyota'));

cars[0].beep();

forループを使用して、保存されているすべてのインスタンスを反復処理できます。

for (var i = 0; i < cars.length; i++) {
  var car = cars[i];

  car.beep();
}
于 2012-07-07T04:53:28.923 に答える
3

ここで問題が何であるかを確認するのが非常に難しい場合。

コードスニペットから、新しいインスタンスを作成する際に発生する可能性がある唯一の問題は、同じ名前を付けることであることがわかります。

他の変数名を付けてください:

var ford = new Car('Ford');
var toyota = new Car('Toyota');

それ以外の場合、さまざまなメーカーの配列があり、それを車のオブジェクトの配列に変換したい場合は、次のようにすることができます。

var types = ["Ford", "Toyota", "VW", "renault"];

var cars = {};

for (var i = 0; i != types.length ; i++)
  cars[types[i]] = new Car(types[i]);

あなたはこのようにこれらの車にアクセスすることができます:

var ford = cars.Ford;

またはこのように:

var ford = cars["Ford"];
于 2012-07-07T04:58:35.613 に答える