切换功能

问题描述 投票:0回答:1

我应该构建一个简单的函数,其中角色的等级决定了他们的生命值。 所以:

  • 如果级别为 0,则返回数字 100
  • 如果级别为 1,则返回数字 150
  • 如果级别为 2
  • ,它返回数字 180
  • 如果级别是 3,它返回数字 190

使用开关函数,我想说如果 case 为 0,则确定 HP 为 100。到目前为止,这是我的代码:

var determineHP = function(Number) {

  switch (determineHP) {
    case 0:
      console.log(determineHP(0) === 100);
      break;
    case 1:
      console.log(determineHP(1) === 150);
      break;
    case 2:
      console.log(determineHP(2) === 180);
      break;
    case 3:
      console.log(determineHP(3) === 190);
  }
}

显然这是不正确的,任何帮助将不胜感激。

javascript function switch-statement
1个回答
1
投票

带开关盒

function getHp(level) {
  switch (level) {
  case 0:
    return 100
  case 1:
    return 150
  case 2:
    return 180
  case 3:
    return 190
  }
}

console.log(getHp(1))

存储数组

因为levels是从0开始递增的,所以可以只做一个数组

const hpAmounts = [100,150,180,190];
let level = 1;

console.log(hpAmounts[level])

有对象

如果您想存储更多信息,请考虑使用对象

const data = [
  {
    level: 0,
    hp: 100,
    damage: 10
  },
  {
    level: 1,
    hp: 150,
    damage: 10
  },
  {
    level: 2,
    hp: 180,
    damage: 10
  },
  {
    level: 3,
    hp: 190,
    damage: 10
  }
]

let level = 1;

console.log(data.find(d => d.level === level).hp)

© www.soinside.com 2019 - 2024. All rights reserved.