我有jasmine测试规范文件,我想使用node.js和浏览器运行它。如何检测脚本是否在节点中运行?
答案 0 :(得分:13)
一些想法:
您可以检查窗口全局对象,如果它可用,那么您在浏览器中
if (typeof window === 'undefined')
// this is node
或者您可以检查过程对象,如果它可用,那么您在节点
if(typeof process === 'object')
// this is also node
答案 1 :(得分:2)
只有一个npm包,它可以在客户端和服务器端使用。
您可以在代码中使用它
import { isBrowser, isNode } from 'browser-or-node';
if (isBrowser) {
// do browser only stuff
}
if (isNode) {
// do node.js only stuff
}
免责声明:我是此套餐的作者:)
答案 2 :(得分:-1)
您检查exports
变量,如下所示:
if (typeof exports === 'object') {
// Node. Does not work with strict CommonJS, but
// only CommonJS-like environments that support module.exports,
// like Node.
module.exports = { ... };
}