Я использую для l oop для создания тестовых испытаний, в которых каждый тестовый элемент представлен один раз, а последний элемент всегда представлен дважды. L oop предназначен для показа каждого размера камня один раз в случайном порядке. , Я пробовал различные функции рандомизации (shuffle, shuffleNoRepeats, sampleWithoutReplacement, repeat), но ни одна из них не справилась. Я унаследовал этот код и адаптирую его, а не пишу сам. Я также заметил, что аргументы данных не записывают фактические размеры представленных элементов, а записывают их в порядке возрастания.
Возможно, есть проблема с l oop, но я не смог определить, в чем проблема, поэтому был бы очень признателен, если бы кто-нибудь взглянул и увидел, могут ли они определить, что не так.
Вот мой код:
var rocksize = [24, 34, 43, 53, 62, 71, 90];
var rateqorder = jsPsych.randomization.repeat([0, 1, 2, 3, 4, 5, 6], 1);
// var rateqorder = jsPsych.randomization.shuffleNoRepeats([0, 1, 2, 3, 4, 5, 6]); // A few different things I've tried
console.log(rocksize)
console.log(rateqorder)
for (var i = 0; i < rateqorder.length; i++) {
var rate = {
type: "html-button-response",
timing_post_trial: 500,
stimulus:
'<div class="ratecontainer">' +
'<div class="head"></div>' +
'<div class="head"></div>' +
'<div class="head"></div>' +
'<div class="mid"></div>' +
'<div class="center">' +
'<div class="raterock">' +
'<span class="ratedot" style="height:' + rocksize[rateqorder[i]] + 'px; width:' + rocksize[rateqorder[i]] + 'px;"></span>' +
'</div></div>' +
'<div class="mid"></div>' +
'<div class="foot"></div>' +
'<div class="foot"></div>' +
'<div class="foot"></div>' +
'</div>' +
'<span><p>Based on what you have learned so far, how likely is it that a Sodor sphere of this size has plaxium coating?<br><br><br></p></span>',
choices: ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"],
prompt: "<span style='font-size:15px'>[Very Unlikely]" + " " +
"[Very Likely]</span>",
data: {
trial: rateqorder[i],
rocksize: rocksize[i]
}
}
timeline.push(rate)
var wait = {
type: "html-keyboard-response",
stimulus: " ",
choices: jsPsych.NO_KEYS,
trial_duration: 1000,
}
timeline.push(wait)
}
timeline.push(rate)
Как я могу остановить повторение финального испытания?