如何解决SyntaxError:意外令牌:将文件内容与字符串连接,然后用terser缩小时,eof未定义
我正在尝试读取文件并将文件内容保存到变量。然后,我想使用该变量并将其连接起来,并以其他方式对其进行解析,然后使用terser对其进行最小化,但我不断收到错误消息:
(node:13708)UnhandledPromiseRejectionWarning:SyntaxError:Unexpected token:eof(undefined)
当我删除此行时,它会起作用:
fileContents = 'String.prototype.hexDecode = function(){var j;var hexes = this.match(/.{1,4}/g) || [];var back = "";for(j = 0; j<hexes.length; j++) {back += String.fromCharCode(parseInt(hexes[j],16));}return back;}' + fileContents;
但是,删除该字符串的问题是我将无法修改所需的字符串。我还需要在整个程序中多次执行此操作,然后我要最小化并将已解析的完整输出写入文件。这是相关的代码:
var input = "input.txt";
function write(data) {
if (!(output == undefined)) {
fs.writeFile(output,data,(err) => {
if (err) console.log(err);
});
}
}
async function mini() {
var { minify } = require("terser");
var fileContents = fs.readFileSync(input).toString();
fileContents = 'String.prototype.hexDecode = function(){var j;var hexes = this.match(/.{1,16));}return back;}' + fileContents;
var result = await minify(fileContents,{ sourceMap: true });
//write(fileContents);
write(result.code)
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。