Browserify 包中的 NodeJS os.networkInterfaces() returns [Object object]
NodeJS os.networkInterfaces() returns [Object object] in Browserify bundle
我是 NodeJS Browserify 的初学者,我编写了一个简单的模块来列出网络接口,并 return 将它提供给查看网页的人。我开始写 main.js 文件,
var os = require("os");
document.write(os.networkInterfaces());
然后我通过这个命令 browserify main.js -o bundle.js 编译了代码,完成后没有产生任何输出但导致了创建bundle.js。这是html代码发挥作用的时候,
<html>
<body>
Hi, here are your network interfaces:
<script src="bundle.js"></script>
</body>
</html>
加载页面时它说,嗨,这是你的网络接口:[object Object] 当我期待 NodeJS 说它是 os.networkInterfaces( ) 调用时函数 returns。我做错了什么,我该如何解决?
与browserify
无关。
document.write
尝试通过调用对象原型的 Object#toString()
函数来字符串化该对象。
因此,如果要打印字符串,请使用 JSON.stringify(obj, null, 2)
(2 代表 2 个空格,用于美化)
var os = require("os");
document.write(JSON.stringify(os.networkInterfaces(), null, 2)));
注意:您可以在控制台中输入:
console.log({"foo":"bar"}.toString());
此外,如果你想在浏览器中使用os
模块,你需要使用os-browserify
我是 NodeJS Browserify 的初学者,我编写了一个简单的模块来列出网络接口,并 return 将它提供给查看网页的人。我开始写 main.js 文件,
var os = require("os");
document.write(os.networkInterfaces());
然后我通过这个命令 browserify main.js -o bundle.js 编译了代码,完成后没有产生任何输出但导致了创建bundle.js。这是html代码发挥作用的时候,
<html>
<body>
Hi, here are your network interfaces:
<script src="bundle.js"></script>
</body>
</html>
加载页面时它说,嗨,这是你的网络接口:[object Object] 当我期待 NodeJS 说它是 os.networkInterfaces( ) 调用时函数 returns。我做错了什么,我该如何解决?
与browserify
无关。
document.write
尝试通过调用对象原型的 Object#toString()
函数来字符串化该对象。
因此,如果要打印字符串,请使用 JSON.stringify(obj, null, 2)
(2 代表 2 个空格,用于美化)
var os = require("os");
document.write(JSON.stringify(os.networkInterfaces(), null, 2)));
注意:您可以在控制台中输入:
console.log({"foo":"bar"}.toString());
此外,如果你想在浏览器中使用os
模块,你需要使用os-browserify