Javascript 构造函数函数';s方法不起作用
我已经编写了以下代码Javascript 构造函数函数';s方法不起作用,javascript,Javascript,我已经编写了以下代码 <!DOCTYPE html> <html> <body> <h1 id="para"></h1> <script> function Dice(sides) { this.sides = sides; this.roll = function() {
<!DOCTYPE html>
<html>
<body>
<h1 id="para"></h1>
<script>
function Dice(sides) {
this.sides = sides;
this.roll = function() {
var randomNumber = Math.floor(Math.random() * this.sides) + 1;
console.log(randomNumber);
}
}
var dice = new Dice(6);
var dice10 = new Dice(10);
</script>
</body>
</html>
函数骰子(边){
这个边=边;
this.roll=函数(){
var randomNumber=Math.floor(Math.random()*this.sides)+1;
控制台日志(随机编号);
}
}
变量骰子=新骰子(6);
var dice10=新骰子(10);
当我检查控制台时,它没有打印随机数&似乎我的“滚动”方法不起作用。如果我不使用roll方法编写代码,它就正常工作了。但是我想提高我在JS方面的技能,所以我很想知道我的构造函数中roll方法有什么问题 实例化后尝试调用对象的方法:
dice.roll();
dice10.roll();
调用构造函数后,您不会看到
roll()
s结果,因为构造函数定义了方法,而不是调用它(在您的情况下)。尝试在实例化后调用对象的方法:
dice.roll();
dice10.roll();
调用构造函数后,您不会看到roll()
s结果,因为构造函数定义了方法,而不是调用它(在您的情况下)。您需要调用roll
函数:
var dice = new Dice(6);
dice.roll();
您需要调用roll
函数:
var dice = new Dice(6);
dice.roll();
添加行
dice.roll();
或
最后
问题是您定义了构造函数,但没有调用roll。添加行
dice.roll();
或
最后
问题是您定义了构造函数,但没有调用roll。因为您没有调用函数,只是定义了它。旁注:“Dice”是复数形式。其中的一个称为“die”。因为您没有调用函数,所以只定义它。旁注:“Dice”是复数。其中一个被称为“死”。