无法将 undefined 或 null 转换为对象
2015-11-29
1497
不确定我在哪里出错:
test.js
731608249
651100576
对于测试,我得到断言错误:
922291811
我以为我已经将其设置在我的start()方法,为什么我的测试仍然失败?
2个回答
您已将
hasStarted
的初始值分配给模块导出,它不会因调用
start()
而改变。
使用函数而不是变量来检索它,即:
module.exports = {
start: start,
started: function() { return hasStarted; }
};
Grozz
2015-11-29
由于您使用的局部变量是原始类型,因此在调用 start 方法后不会反映出来。js 中的原始类型是按值传递的。
var hasStarted = {
isStarted: false
};
var game = {
start: start,
started: hasStarted
};
function start() {
hasStarted.isStarted = true;
};
module.exports = game;
这将按您期望的方式工作
Devendiran Kumar
2015-11-29