js 怎样判断环境,在node环境时才引入 对象?

try {
if(!localStorage)
import {localStorage} from './local_storage.js'
}

node环境怎么能完成上面这种操作。。。我希望代码在node和浏览器都能执行。
用了top await所以node设置了type : module,

阅读 1.7k
2 个回答
if (typeof window === 'undefined') {
  // We are in node.js environment
  import('./local_storage.js').then((module) => {
    const localStorage = module.localStorage;
    // Use localStorage...
  });
}

this === window ? '浏览器': 'node'
// globalThis 为浏览器和node都存在与全局
Object.prototype.toString.call(globalThis) === '[object Window]' ? '浏览器环境':'node环境'

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题