Javascript Lua表到js数组

Javascript Lua表到js数组,javascript,html,arrays,lua-table,Javascript,Html,Arrays,Lua Table,我有一张像这样的桌子 Save = { ["player 1"] = { ["show"] = true, ["name"] = "user1", ["data"] = 56171308, }, ["player 2"] = { ["show"] = false, ["name"] = "user1", ["data"] = 508703367, },} 我想通过html页面将其转换为js数组 [ ["player 1","user1",56

我有一张像这样的桌子

Save = {
["player 1"] = {
    ["show"] = true,
    ["name"] = "user1",
    ["data"] = 56171308,
},
["player 2"] = {
    ["show"] = false,
    ["name"] = "user1",
    ["data"] = 508703367,
},}
我想通过html页面将其转换为js数组

[   ["player 1","user1",56171308],
["player 2","user2",508703367] ]
我尝试在页面上加载lua内容,并使用此函数删除一些元素

<script>
  function myFunction() {
    var str = document.getElementById("file-content").innerHTML;
    var res = str.replace(/Save|show|true|false|name|data|,|{|}|=|"|[[\]]/g, '');
    var temp = new String(res);
    temp = temp.replace(/^\s*[\r\n]/gm, '');
    document.getElementById("file-content").innerHTML = temp;
  }
</script>

函数myFunction(){
var str=document.getElementById(“文件内容”).innerHTML;
var res=str.replace(/Save | show | true | false | name | data |,{|}|=|“|[\]/g.”);
var temp=新字符串(res);
temp=temp.replace(/^\s*[\r\n]/gm',);
document.getElementById(“文件内容”).innerHTML=temp;
}

以下是针对您的问题的最新答案:

function myFunction() {
    var str = document.getElementById("file-content").innerHTML;
    var res = str.replace(/Save|show|true|false|name|data|,|{|}|=|"|[[\]]/g, '  '); // extra white space replace
    var temp = new String(res);
    temp = temp.replace(/^\s*[\r\n]/gm, '');
    temp = temp.replace(/(\r\n|\n|\r)/gm, "");
    temp = temp.replace(/\t/g, '');

    var array = temp.split("  ");
    array = array.filter(function(e) {
        return e
    });
    var finalArray = chunkArray(array, 3)
    console.log(finalArray);
    var longstring = convertToSring(finalArray);
    document.getElementById("file-content").innerHTML = longstring.toString();
}

function chunkArray(myArray, chunk_size) {
    var index = 0;
    var arrayLength = myArray.length;
    var tempArray = [];

    for (index = 0; index < arrayLength; index += chunk_size) {
        myChunk = myArray.slice(index, index + chunk_size);
        // Do something if you want with the group
        tempArray.push(myChunk);
    }

    return tempArray;
}

function convertToSring(finalArray) {
    var longstring = "[";
    for (var i = 0; i < finalArray.length; i++) {
        var string = '["' + finalArray[i].join('","') + '"],';
        console.log(string);
        longstring = longstring + string;
    }
    longstring = longstring.replace(/,\s*$/, ""); // remove last comma
    longstring = longstring + "]";
    return longstring;
}

myFunction();
函数myFunction(){
var str=document.getElementById(“文件内容”).innerHTML;
var res=str.replace(/Save | show | true | false | name | data |,{|}|=|“|[\]]/g,”;//额外的空格替换
var temp=新字符串(res);
temp=temp.replace(/^\s*[\r\n]/gm',);
温度=温度替换(/(\r\n |\n |\r)/gm,“”;
温度=温度更换(/\t/g');
变量数组=临时拆分(“”);
数组=数组.过滤器(函数(e){
返回e
});
var finalArray=chunkArray(数组,3)
控制台日志(finalArray);
var longstring=转换字符串(最终数组);
document.getElementById(“文件内容”).innerHTML=longstring.toString();
}
函数chunkArray(myArray,chunk\u大小){
var指数=0;
var arrayllength=myArray.length;
var tempArray=[];
对于(索引=0;索引

检查JSFIDLE工作代码:

您可以在这里看到代码我已经更改了该脚本,但是输出是
[“玩家1”、“用户1”、“56171308”、“玩家2”、“用户1”、“508703367”]
并且我想成为
[[“玩家1”、“用户1”、“56171308”]、[“玩家2”、“用户1”、“508703367”]]
好的@H0lla8ack将解决您的问题并回复您您好@H0lla8ack,我已根据您的要求更新了我的代码,请检查。同时将此答案标记为正确