我正在使用 jspsych/javascript 编写一个在线实验。实验由 100 个区块组成,在每个区块之后,block_number 会更新 +1。有两个条件。在 75 个块上,我希望程序显示一个图像,在 25 个块上,我希望程序显示一个字母。首先,我生成了 25 个随机数(将用作 25 个块号),字母应显示在其上。我的问题是告诉程序将这 25 个数字用作字母条件的 block_number,但将其他块编号用作图像条件的 block_number。也许我需要以不同的格式存储 25 个数字,即它们不存储为数组?同样在 if 语句中,如何将 block_number 与这 25 个数字“连接”?请在下面查看我的代码。非常感谢您的帮助,我真的很感激!
// 一开始就初始化block_number,在for循环之后更新+1:
var block_number = 0;
// 总共有 100 个块,其中 25 个(一开始是随机选择的)应该显示一个字母而不是图像:
var random_numbers = Array.from(Array(95), (x, index) => index + 5);
random_numbers = jsPsych.randomization.shuffle(random_numbers);
var block_keys = random_numbers.filter((random_numbers,idx) => idx < 25);
block_keys.sort();
// 在 if 语句中,我只想在 block_number 等于 block_keys 时显示字母,否则应该显示图像:
if (block_number == block_keys) {
show letter
} else {
show image
}