Javascript 通过将数组值转换为表来创建.txt文件

Javascript 通过将数组值转换为表来创建.txt文件,javascript,jquery,arrays,node.js,Javascript,Jquery,Arrays,Node.js,我有一系列的 myarray=[“ram”、“ram”、“一月”、“一月”、“二月”、“二月”] 是否可以创建一个以表格格式显示此值的.txt文件?有几种方法可以实现这一点(这取决于您的最终要求和限制)。最好的方法是使用一些模板引擎,例如,或 不过,您也可以使用常规JavaScript数组来实现 返回HTML表的示例: var myarray=[“user1”、“pass1”、“user2”、“pass2”、“user3”、“pass3”], 输出=[]; 输出推送(“”) 对于(变量i=0;

我有一系列的

myarray=[“ram”、“ram”、“一月”、“一月”、“二月”、“二月”]


是否可以创建一个以表格格式显示此值的.txt文件?

有几种方法可以实现这一点(这取决于您的最终要求和限制)。最好的方法是使用一些模板引擎,例如,或

不过,您也可以使用常规JavaScript数组来实现

返回HTML表的示例:

var myarray=[“user1”、“pass1”、“user2”、“pass2”、“user3”、“pass3”],
输出=[];
输出推送(“”)
对于(变量i=0;i
输出如下(请注意,HTML已格式化以提高可读性):


用户1pass1
用户2pass2
用户3pass3

我希望这会有所帮助。

前端:

如果您的代码将位于前端(浏览器),则可以使用以下选项:

var row_width = 40;

var content = "";
content += "Username" + new Array(row_width + 1).join(" ") + "Password\n";
content += "********" + new Array(row_width + 1).join(" ") + "********\n";

for (var i = 0; i < myarray.length; i += 2) {
    content += myarray[i] + new Array(row_width - myarray[i].length + 9).join(" ");
    content += myarray[i+1];
    content += "\n";
}

// Build a data URI:
uri = "data:application/octet-stream," + encodeURIComponent(content);

// Click on the file to download
// You can also do this as a button that has the href pointing to the data URI
location.href = uri;
我还没有试过那个代码,但是如果它对你有用,请随时告诉我。我希望这就是你需要的


注意某些过时/不好的浏览器可能不支持前端代码

您应该提供您期望的有问题的格式。为什么数组中有重复的值?要使用前端Javascript或后端Node.js吗?“表格格式”是什么意思?CSV?不是重复值。。它可能是用户名和密码。在我的例子中,两者都是一样的。那么为什么不使用对象而不是数组呢?我是说一系列的object@Frax表的意思是,就像用户名和密码的报告。它可以工作。。谢谢,但是对齐不好,它显示的像
用户名密码***************ram ramjan janfeb feb
你能帮我吗?这是一个调整内容字符串的问题。。。我将尝试添加选项卡和换行符,并会让您知道。你可以随意修改字符串当然。。。非常感谢..我更新了代码,在字符串中添加了“\n”换行符。让我知道如果它看起来更好如果你想保持它为文本,你只需要得到正确的空间量。我添加了更多的新行。现在看起来应该更好了,但需要更多的调整。我们还可以将该文件作为HTML,其中包含一个表和一些CSS规则
<table>
    <tr><td>user1</td><td>pass1</td></tr>
    <tr><td>user2</td><td>pass2</td></tr>
    <tr><td>user3</td><td>pass3</td></tr>
</table>
var row_width = 40;

var content = "";
content += "Username" + new Array(row_width + 1).join(" ") + "Password\n";
content += "********" + new Array(row_width + 1).join(" ") + "********\n";

for (var i = 0; i < myarray.length; i += 2) {
    content += myarray[i] + new Array(row_width - myarray[i].length + 9).join(" ");
    content += myarray[i+1];
    content += "\n";
}

// Build a data URI:
uri = "data:application/octet-stream," + encodeURIComponent(content);

// Click on the file to download
// You can also do this as a button that has the href pointing to the data URI
location.href = uri;
var fs = require('fs');

fs.writeFile("/path_to_file/table.txt", content, function (err){
    if (err) {
        console.log(err);
    } else {
        console.log("File saved");
    }
});