如何使JavaScript代码与Node.js和浏览器兼容

时间:2019-02-14 21:59:31

标签: javascript node.js npm

我的一半JavaScript代码未在node.js中运行,而另一半不在我的浏览器(chrome)中运行。

代码的前半部分运行一个外部“ Hello World” .jar文件,并将字符串保存在输出变量中。这段代码在node.js中运行了问题。但是,当我尝试将输出变量的内容粘贴到html(第二部分)上时,出现错误。浏览器无法识别require()语句,而node.js也无法识别“文档”对象。我知道Node.js用于运行javascript代码的前端和后端,但是我不知道必须做些什么才能将两个世界联系起来。

//first half
var jre = require('node-jre');
var output = 
jre.spawnSync(["E:/proyectosJavaScript/prueba1/HelloWorld.jar"], 
"hello.helloWorld", ["parametro"], { encoding: 'utf-8' })
.stdout.trim();
console.log(output);
//second half
var titulo = document.getElementById("P1t1");
titulo.innerHTML=`${output}`;



 //browser response:    
 Uncaught ReferenceError: require is not defined at "nombreDelScript"

 //node.js response:
 ReferenceError: document is not defined
 at Object.<anonymous> (E:\proyectosJavaScript\prueba1\libreto.js:125:14)
 at Module._compile (internal/modules/cjs/loader.js:688:30)
 at Object.Module._extensions..js (internal/modules/cjs/loader.js:699:10)
 at Module.load (internal/modules/cjs/loader.js:598:32)
 at tryModuleLoad (internal/modules/cjs/loader.js:537:12)
 at Function.Module._load (internal/modules/cjs/loader.js:529:3)
 at Function.Module.runMain (internal/modules/cjs/loader.js:741:12)
 at startup (internal/bootstrap/node.js:285:19)
 at bootstrapNodeJSCore (internal/bootstrap/node.js:739:3)

0 个答案:

没有答案