访问JavaScript对象属性和函数时出现未定义错误
我是新来的。我试图使用.notation访问对象属性和方法,它为对象属性提供了访问JavaScript对象属性和函数时出现未定义错误,javascript,node.js,Javascript,Node.js,我是新来的。我试图使用.notation访问对象属性和方法,它为对象属性提供了未定义的错误,为对象函数提供了类型错误:dice.roll不是函数 以下是代码: 对象文件: var dice = { size: 4, count:3, roll:function(){ var result = Math.ceil(this.size * Math.random()); return result; } }; exports.
未定义的错误,为对象函数提供了类型错误:dice.roll不是函数
以下是代码:
对象文件:
var dice = {
size: 4,
count:3,
roll:function(){
var result = Math.ceil(this.size * Math.random());
return result;
}
};
exports.diceObjectName = dice;
var dice = require("./dice");
console.log(dice);
console.log(dice.roll());
程序文件:
var dice = {
size: 4,
count:3,
roll:function(){
var result = Math.ceil(this.size * Math.random());
return result;
}
};
exports.diceObjectName = dice;
var dice = require("./dice");
console.log(dice);
console.log(dice.roll());
您需要使用module.exports=dice
var dice = {
size: 4,
count:3,
roll:function(){
var result = Math.ceil(this.size * Math.random());
return result;
}
};
module.exports = dice;
代替此代码:exports.diceObjectName=dice代码>试试这个:module.exports=dice
var dice = {
size: 4,
count:3,
roll:function(){
var result = Math.ceil(this.size * Math.random());
return result;
}
};
module.exports = dice;
或者这个:
var dice = require("./dice").diceObjectName;
console.log(dice);
console.log(dice.roll());
您正在导出diceObjectName中的对象。因此,为了使用它,您必须这样做:
var dice = require("./dice").diceObjectName;
控制台.log(dice)的结果是什么?
尝试更改exports.diceObjectName=dice代码>进入导出。骰子=骰子代码>。