我一直试图通过多次重写我的forLoop来解决这个问题,例如在线查看,甚至检查出MDN并得到了我需要帮助的点。
现在我得到的测试错误是:
1) loops forLoop(array) adds `"I am ${i} strange loop${i === 0 ? '' : 's'}."` to an array 2
5 times:
ReferenceError: forLoop is not defined
我目前的代码如下:
function forLoop(array){
var newArr = [];
for (var i = 0; i < array.length; i++){
if (i === 1) {
newArr.push("I am 1 strange loop.")
} else {
newArr.push(`I am ${i} strange loop${i === 0 ? '' : 's'}.`)
}
}
return newArr
}
思考过程:
有什么我不理解或缺失的东西吗?真的好像不能破解这个。
有关测试的其他信息。对此问题的测试是:
describe('forLoop(array)', () => {
it('adds `"I am ${i} strange loop${i === 0 ? \'\' : \'s\'}."` to an array 25 times', () => {
const [array, t] = makeArray()
const strangeArray = forLoop(array)
expect(strangeArray.length).to.equal(t + 25)
const testArray = strangeArray.slice(array.length)
for (let i = 0, l = testArray.length; i < l; i++) {
let s = i === 1 ? "I am 1 strange loop." : `I am ${i} strange loops.`
expect(testArray[i]).to.equal(s)
}
})
})
答案 0 :(得分:1)
ReferenceError: forLoop is not defined
表示Javascript解释器无法找到“forLoop”函数。
可能的原因:
测试和功能不在同一个文件中,并且在包含包含该功能的文件时出错。确保在测试文件之前包含带有该功能的文件。
测试无法访问该功能,因为它与您的应用程序的范围不同。
我自己测试了forLoop功能,它对我有用。我不认为问题出在forLoop函数中。