1. ランダムデータの生成

多くの研究では,刺激は参加者ごとに新たにランダムに生成されます。これを可能にするために,「lab.js」には柔軟な(疑似)ランダムデータ生成関数が含まれています。 すべてのランダムデータの生成は,「util.Random()」によって処理されます。プログラム内のすべてのコンポーネントは,randomプロパティを通じてこの関数に直接アクセスします。

たとえば,コンポーネントスクリプトで最大n個のランダムな整数を生成するには,「this.random.range(n)」と記述します。 以下は例です。

this.options.parameters['greeting'] =
  this.random.choice(['aloha', 'as-salamualaikum', 'shalom', 'namaste'])

このコードでは,「greeting」の1つがランダムに選択され,「greeting」パラメータに保存されます。値は,パラメーターを挿入できる場所であればいつでも再利用でき,データセットに含まれます。 また,これらの関数を$ {this.random.choice(['hej', 'hola', 'ciao'])}などのプレースホルダー内で直接使用して,このプレースホルダーを画面コンテンツに含めることもできます。

この方法を用いると,メッセージをデータとして保存せずにランダムな挨拶を生成できます。

実際の実験では,いくつかの条件の1つへのランダム割り当てなどに用いることが出来るでしょう。

class util.Random([options])

(疑似)ランダム動作を備えた関数のセットであり,すべて同じランダム性のソースを利用します。デフォルトでは,ランダムを作り出すソースはブラウザーに組み込まれた乱数ジェネレーター,「Math.random」です。

util.Random.random()

戻り値:0(両端を含む)〜1(両端を含まない)の範囲の浮動小数点数。

util.Random.range(a [,b])

戻り値:単一の値のみが指定されている場合,0と上限-1の間のランダムな整数。 2つの値が渡される場合,オフセットと上限の間の整数値-1。

util.Random.choice(配列)

戻り値:指定された配列のランダムな要素。

util.Random.sample(array,n [,replacement = false])

戻り値:置換ありまたは置換なしの配列から描画されたn個の要素(デフォルト)。

util.Random.shuffle(配列)

戻り値:入力配列のシャッフルされたコピー。

util.Random.constrainedShuffle(array,constraint [,helpers = {},maxIterations = 10 ** 4])