整体上是JS的新手,我正在尝试向JS对象添加一个方法。 我有一个对象;
.container {
width: 70%;
margin: 10px auto;
position: relative;
text-align: center;
border: 1px solid black;
}
.block {
background-image: -webkit-linear-gradient(150deg, #D7D7D7, #979797);
background-image: -o-linear-gradient(150deg, #D7D7D7, #979797);
background-image: linear-gradient(240deg, #D7D7D7, #979797);
border-radius: 10px;
height: 100px;
width: 100px;
display:inline-block;
margin: 10px;
padding: 10px;
vertical-align: middle;
line-height: 1.5;
}
<div class="container">
<div class="block">Hello</div>
<div class="block">Everybody</div>
<div class="block">Would like to center it please</div>
</div>
我想稍后定义generateRandom方法,如下所示
function Population() {
this.size = 30;
this.items = [];
this.generateRandom;
};
但我收到了错误
“generateRandom”不是函数
如果我创建一个新的群体并尝试运行它,我会收到此错误;
Population.prototype.generateRandom = function() {
....code here...
}
答案 0 :(得分:0)
您的代码应该按原样运行 - 尝试运行此代码(冒昧地在函数中添加一些代码):
function Population() {
this.size = 30;
this.items = [];
};
Population.prototype.generateRandom = function() {
for(let i = 0; i < this.size; i++)
this.items.push(Math.floor(Math.random() * 100));
return this.items;
};
let p = new Population();
console.log(p.generateRandom());
&#13;
答案 1 :(得分:0)
也许是第3行的this.generateRandom;
是导致问题的原因。这是不必要的。
此外,由于您要定义对象,因此您可能希望使用class
关键字:
class Population {
constructor() {
this.size = 30;
this.items = [];
}
generateRandom() {
// ...your function here
}
}