I am trying to pass a function argument into a variable (if this is possible) to reduce code repetitiveness and nested if statements/ switch statements. Through research, I discovered the getElementById reference would need to be place in quotes to show up as an id. The main question is, can I pass the argument into a variable name?
<body>
<div class="contain">
<h3 id="red">0</h3>
<h3 id="green">0</h3>
<h3 id="blue">0</h3>
<button onClick="player_one.addResource(4,green)">Add Green</button>
<button onClick="player_one.addResource(3,red)">Add Red</button>
<button onClick="player_one.addResource(7,blue)">Add Blue</button>
</div>
<script>
var redResource = 0;
var greenResource = 0;
var blueResource = 0;
var player_one = {
addResource: function(num,color){
(color)Resource += num
document.getElementById(color).innerHTML =((color)Resource);
}
}
</script>
</body>
--------------------------------------------------------------------
--------------------------------------------------------------------
//with a different approach, I still have an issue
var player_one = {
addResource: function(num,color){
player_one.color += num
document.getElementById(color).innerHTML = (player_one.color);
},
red: 0,
green: 0,
blue: 0
}