首页 > 解决方案 > 将 VAR 更改为数组以存储多个项目

问题描述

所以我有一个在游戏模组中使用的脚本,该脚本允许您点击向上箭头来快速查看您之前输入的其他消息。它将一条消息存储为 chat.previous。有没有办法将“chat.previous”变成一个数组,然后每次向上箭头被按下时我都可以在该数组中使用一个 for 循环?

这是脚本的片段。

else if (event.which == 13 && chat.input != null) {
        var value = chat.input.children("input").val();

        if (value.length > 0) {
            chat.previous = value;
            if (value[0] == "/") {
                value = value.substr(1);

                if (value.length > 0 && value.length <= 100)
                    mp.invoke("command", value);
            }
            else {
                if (value.length <= 100)
                    mp.invoke("chatMessage", value);
            }
        }
        enableChatInput(false);
        hide();
    }
    else if (event.which == 27 && chat.input != null) {
        enableChatInput(false);
        hide();
    }
    else if (event.which == 38 && chat.input != null) {
        chat.input.children("input").val(chat.previous);
    }

正如您所看到的,当按下回车键时,它将聊天消息存储为 chat.previous 我想将它从只能存储 1 更改为可能存储 10。然后我应该能够通过结果进行 FOR LOOP。如果我错了,请纠正我。

多谢你们。

标签: javascript

解决方案


通常你可以这样做:

if (!chat.previous) {
  chat.previous = [ ];
}

chat.previous.push(value);

处理可能是数组的东西很烦人。使它始终如一地成为一个数组。


推荐阅读