首页 > 解决方案 > Jasmine 从脚本文件中获取未定义的数组

问题描述

randomIDs我用这个函数在我的脚本文件中定义我的数组:

let randomIDs = [];
let letters = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l"];

function zeroPadd(value) {
    return value < 10 ? "0" + value : value;
}

function randomise() {
    playButton.prop("disabled", false).text("Play");
    musicGrid.find(".selected").removeClass("selected");
    $(".bar").removeClass("playing");
    for (let i = 1; i <= 12; i++) {
        const randomIndex = Math.floor(Math.random() * letters.length);
        randomIDs[i - 1] = letters[randomIndex] + zeroPadd(i);
    }
    randomIDs.forEach(id => $(`#${id}`).addClass("selected"));
    createSequence();
}

调用此函数后,我的数组例如:

["c01", "h02", "l03", "i04", "g05", "f06", "h07", "b08", "h09", "i10", "l11", "i12"]

(字母是随机的,数字从 1 到 12 是连续的)。

我想用 Jasmine 运行测试,但在我的 Jasmine html 文件中,我的randomIDs数组是

["undefined01", "undefined02", "undefined03", "undefined04", "undefined05", "undefined06", "undefined07", "undefined08", "undefined09", NaN, NaN, NaN]

我还没有编写任何规范,但是我得到了 jasmine 尝试使用该数组查找文件的控制台错误。我究竟做错了什么?

标签: javascriptjqueryjasmine

解决方案


推荐阅读