我担心我不完全理解 JavaScrpt 变量作用域。我有一个如下所示的函数:
return {
response: '',
birthMonthPrompt: function(question, promptCallback) {
this.dialogText = question;
}
};
这个想法是birthMonthPrompt会询问用户他们的出生月份。他们输入后,我将得到一个像“November”这样的值。为了测试这一点,我编写了以下内容:
it('should prompt the user', function() {
var reponse = 'November';
myService.response= response;
myService.birthMonthPrompt('Please choose your birth month:',
function(userResponse) {
expect(userResponse).toBe(this.response);
}
);
});
当我执行此操作时,我收到一条错误消息:
ReferenceError: Can't find variable: response
我不明白为什么我的测试找不到响应。我做错了什么?
最佳答案
您有一个拼写错误:
var reponse = 'November';
应该是:
var response = 'November';
关于javascript - 测试 JavaScript 回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25366739/