【问题标题】:Algorithm suggestion to render user information呈现用户信息的算法建议
【发布时间】:2020-04-25 00:49:57
【问题描述】:

我正在学习多维数组/对象。我想测试这个想法并尝试了我能想到的一切,但我找不到正确的解决方案。

假设一个游戏中有 3 个注册“用户”。当他们登录时,它将呈现玩家信息,如 ID、LEVEL 和 HP。您将如何为此构建功能?

我是新手,所以请使用香草JS。另外,这个场景只是为了练习,所以请不要提及任何关于服务器的内容。

<label>User ID:</label>
<input type='text'></input>
<br>
<label>User PW:</label>
<input type='text'></input>
<br>
<button id='demoButton'>Log in</button>

<table>
    <tr>
        <th colspan='2'>Outcome</th>
    </tr>
    <tr>
        <th>ID:</th>
        <td></td>
    </tr>
    <tr>
        <th>LEVEL:</th>
        <td></td>
    </tr>
    <tr>
        <th>HP:</th>
        <td></td>
    </tr>
</table>

<script>

var allPlayers = {
    'player1': ['id1', 55, 100],
    'player2': ['id2', 12, 50],
    'player3': ['id3', 123, 1000]
};

*// What kind of function to write?*

</script>

【问题讨论】:

    标签: javascript html arrays algorithm object


    【解决方案1】:

    下一个函数会帮助你。您可以创建一个函数“showObjectData”,它接收像“allPlayers”这样的对象并使用 Object.entries 方法。通过这个方法,您将获得一个包含所有键/值对的数组,并且由于数组是可迭代的,您可以使用 forEach 方法打印每个元素并访问 element[1],这是您可以迭代的另一个数组。

    var allPlayers = {
      'player1': ['id1', 55, 100],
      'player2': ['id2', 12, 50],
      'player3': ['id3', 123, 1000]
    };
    
    function showObjectData(obj) {
       Object.entries(obj).forEach(element => {
       console.log(element);
       });
    }
    
    showObjectData(allPlayers);
    

    【讨论】:

    • 请不要只发布代码作为答案,还要解释您的代码的作用以及它如何解决问题的问题。带有解释的答案通常质量更高,更有可能吸引投票。
    猜你喜欢
    • 1970-01-01
    • 2013-01-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-16
    • 1970-01-01
    相关资源
    最近更新 更多