JavaScript Math внутри функции не работает - PullRequest
0 голосов
/ 04 декабря 2018

Проблема у меня в том, что она возвращает только 10, более или менее.Также есть ли лучший способ сделать это, пожалуйста, поделитесь, как я учусь, и из большинства видео на YouTube, которые я видел, они делают математику вне функции или математику внутри функции, но имеют только 1 аргумент для строки.

var player = {hp:10, at:1};
var enemy ={hp:10, at:1};
function hit() {
    function minus() {
        
        return player.at - enemy.hp;
       }
           console.log(enemy.hp);
           return ;
}
<button onclick="hit()">Hit</button>

Ответы [ 2 ]

0 голосов
/ 04 декабря 2018

Я думаю, это то, что вы намеревались сделать.

   
var player = {
  hp: 10,
  at: 1
};
var enemy = {
  hp: 10,
  at: 1
};

function hit() {
  enemy.hp = enemy.hp - player.at;
  console.log(enemy.hp);
}
<button onclick="hit()">Hit</button>
0 голосов
/ 04 декабря 2018

Как сказал @Felix Kling, вы не вызываете свою функцию.Вы просто печатаете enemy.hp на консоль.

Вот пример того, как вы можете структурировать свой код:

https://jsfiddle.net/mswilson4040/bg4ey1z9/4/

var player = {
  hp: 10,
  at: 1
};
var enemy = {
  hp: 10,
  at: 1
};

function hit() {
  console.log(enemy.hp);
  return minus();
}

function minus() {
  return player.at - enemy.hp;
}
...