問題:私は2つのパラメータ取るウィザードという名前のコンストラクタ関数を作成しようとしている:名前と呪文をした後、ウィザードのオブジェクトを作成します。コンストラクタ関数の作成方法は?
「ウィザードの各特定のインスタンスは、名前プロパティを持っている必要があります(A string)、文字列の配列である呪文のプロパティ、文字列形式のランダムな呪文を返すことのできるcastSpellのメソッドです。 "
オブジェクトのプロパティは次のとおりです。nameは "Gorrok"(文字列)、呪文は "abracadabra"と "cadabraabra"(配列)です。
目的: Gorrok:そうのようなランダムな呪文を表示するには、castSpellメソッドを呼び出すには
コード abracadabraバス:私はこれまでのところ、以下のコードを書いている、と私はこの段階で立ち往生!
function Wizard(name, spells){
this.name = name;
this.spells = [spells];
this.castSpell = function(){
var v = Math.random();
if (v >= 1)
document.write(this.name + " : " + this.spells[0]);
else
document.write(this.name + " : " + this.spells[1]);
}
}
var w = new Wizard("Gorrok", "abracadabra", "cadabraabra");
w.castSpell();
、私はあなたがそこに何をしたかが好きです。 Math.round(Math.random())を使用する状況はまったく同じですか?そして、あなた自身の中で他の数学のクラスを使うことができますか? – ratboy
'Math.random'は0と1の間の浮動小数点数を返します。' Math.round'はfloatを最も近い整数に丸めます。あなたはMath。{someFunction}の結果を使用するときに制限されません。 'var floatBetween0and1 = Math.random();のように書くことができます。 var number0or1 = Math.round(floatBetween0and1) ' – Freez