我是Javascript nodejs的新手,我试图从hithub使用modesty / pdf2json。但是有错误显示缺失)语法错误,下面是注释中的代码和错误标志,
let fs = require('fs'),
PDFParser = require("./pdf2json/PDFParser");
let pdfParser = new PDFParser();
pdfParser.on("pdfParser_dataError", errData => console.error(errData) );
//Syntax error here missing ) at "errData"
pdfParser.on("pdfParser_dataReady", pdfData => {
let pJSON = JSON.stringify({"formImage": pdfData.data});
//Syntax error here missing ) at "pdfData"
fs.writeFile("./pdf2json/test/F1040EZ.json", pJSON, (err) => {
if(err) {
console.error("parsing error: ", err);
}
else {
console.log("parsing succeeded");
}
});
});
pdfParser.loadPDF("./pdf2json/test/pdf/fd/form/F1040EZ.pdf");
// or, call directly with buffer
fs.readFile(pdfFilePath, function (err, pdfBuffer) {
if (!err) {
pdfParser.parseBuffer(pdfBuffer);
}
})
" =>"是什么意思? ?导致错误趋向于弹出带有此符号的行。
答案 0 :(得分:1)
这是在ES6中引入的箭头功能。
根据MDN,
与函数表达式相比,箭头函数表达式(也称为胖箭头函数)具有更短的语法,并且词汇绑定此值(不绑定它自己的this,arguments,super或new.target)。箭头功能始终是匿名的。
(param1, param2, …, paramN) => { statements }
(param1, param2, …, paramN) => expression
// equivalent to: => { return expression; }
// Parentheses are optional when there's only one parameter:
(singleParam) => { statements }
singleParam => { statements }
// A function with no parameters requires parentheses or an underscore:
() => { statements }
_ => { statements }
您能告诉我您执行此代码的方式吗?
<强>更新强> 在严格模式之外,不允许使用块范围声明。因此,在脚本中使用严格模式。
答案 1 :(得分:0)
是ES6标记:
param => { }
与:
相同function (param) { }
以下代码适用于节点:
"use strict"
let fs = require("fs"),
PDFParser = require("pdf2json");
let pdfParser = new PDFParser();
pdfParser.on("pdfParser_dataError", errData => {
console.error(errData)
});
pdfParser.on("pdfParser_dataReady", pdfData => {
let pJSON = JSON.stringify({
"formImage": pdfData.data
});
fs.writeFile("./pdf2json/test/F1040EZ.json", pJSON, err => {
if (err) {
console.error("parsing error:", err);
} else {
console.log("parsing succeeded");
}
});
});
pdfParser.loadPDF("./pdf2json/test/pdf/fd/form/F1040EZ.pdf");
您还可以尝试使用代码的ES5版本:(注意功能和var
代替let
)
var fs = require('fs'),
PDFParser = require("pdf2json");
var pdfParser = new PDFParser();
pdfParser.on("pdfParser_dataError", function (errData) { console.error(errData) });
pdfParser.on("pdfParser_dataReady", function (pdfData) {
var pJSON = JSON.stringify({"formImage": pdfData.data});
fs.writeFile("./pdf2json/test/F1040EZ.json", pJSON, function (err) {
if(err) {
console.error("parsing error: ", err);
} else {
console.log("parsing succeeded");
}
});
});
pdfParser.loadPDF("./pdf2json/test/pdf/fd/form/F1040EZ.pdf");