javascript - 如何在 Node.JS 中多行编写函数的输出
问题描述
我希望我的函数在文本文件中写入多行,但只有一行。我试图做一个循环,但没有任何改变。请帮忙。
这是我的代码:
const prompt = require('prompt-sync')();
const num = prompt('myquestion : ');
let path = "mypath"
var x = (Number(num));
function run() {
for (let ligne = 0; ligne < x; ligne++) {
fs.writeFileSync(path, "mytext");
};
};
function gen(length) {
var result = '';
var characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
var charactersLength = characters.length;
for (var i = 0; i < length; i++) {
result += characters.charAt(Math.floor(Math.random() * charactersLength));
}
return result;
}
run()
console.log("mytext");```
解决方案
使用fs.appendFileSync
而不是fs.writeFileSync
,也使用行尾,以便在追加时光标移动到新行。使用os.EOL
var os = require("os");
function run() {
for (let ligne = 0; ligne < x; ligne++) {
fs.appendFileSync(path, "mytext"+os.EOL);
};
};
推荐阅读
- javascript - 遍历两个数组,找出匹配的值
- python - 向 lambda 函数添加多个表达式,以获取 if/else 输出
- javascript - 如何以编程方式获取 YouTube 网址?
- python - 具有多处理功能的 Write():内置锁定以防止输出乱码?
- java - Java - Mockito - 如何在测试中将依赖注入抽象
- apache-spark - Spark SQL:从另一个数据帧中减去一个数据帧的相应行
- python-3.x - 写入 STATIC_ROOT 时,Django sqlite“数据库已锁定”
- c# - 粒子系统仅在 GetButton() 的开始和结束时播放
- jquery - 找到完全匹配文本的 CSS 选择器
- c# - Winforms - C# 任务栏进度指示器 (Windows 10)