所以我试着为我的游戏创建一个银行,银行的总价值是,但不改变属性。为什么会这样呢?是不是跟作用域有关?谢谢..。
我已经使用了你的代码,我在codepen上,当我输入console.log(player.credits)时,即使我输入一个新的数字,它仍然是5000个点数。
是的,我真的很喜欢你给我做的代码,它可以工作,但当我用codepen登录到控制台时,它仍然不会改变积分。
<p id='move'></p>
<input type='number' id='money' min="1">
<button id='deposit' onclick='player.bank()'>Deposit</button>
let player = {
  credits: 5000,
  bankCredits: 100,
  bank() {
    let hope = this.credits || 0;
    let a = parseInt(document.getElementById('money').value) || 0;
    this.credits = hope + a;
    document.getElementById('move').innerHTML = 'You have deposited ' + a + ' and now have ' + this.credits;
  }
  };
console.log(player.credits) ```发布于 2020-06-08 14:50:47
要访问对象函数中的当前对象属性,只需用this.credits替换player.credits
此外,由于您主要使用number,因此可以使用<input type="number"而不是<input type='text'。
let player = {
  credits: 5000,
  bankCredits: 100,
  bank() {
    let hope = this.credits || 0;
    let a = parseInt(document.getElementById('money').value) || 0;
    this.credits = hope + a;
    document.getElementById('move').innerHTML = 'You have deposited ' + a + ' and now have ' + this.credits;
  }
}
console.log(player.credits);<p id='move'></p>
<input type='number' id='money' min="1">
<button id='deposit' onclick='player.bank()'>Deposit</button>
https://stackoverflow.com/questions/62256415
复制相似问题