gpt4 book ai didi

javascript - 如何检查我的代码是否在 NodeJs 中运行?

转载 作者:行者123 更新时间:2023-11-30 08:54:54 25 4
gpt4 key购买 nike

我有一段 JavaScript 设计用于在 NodeJS 中运行,否则它会中断(例如,它使用了 require())。我想在运行时检查它是否在 NodeJS 中,否则会产生一条明确的错误消息。

我看过 this answer解释如何检查代码是否在浏览器内运行。但是它不会检查是否有 NodeJS。

如何检查我的 JavaScript 是否在 NodeJS 中运行?

最佳答案

防弹解决方案将检查全局 window 对象。在浏览器中,它存在,并且无法删除。在 node.js 中,它不存在,或者如果存在(因为有人定义了它),它可以被删除。 (在node.js中,全局对象叫做GLOBAL,可以删除)

执行此操作的函数如下所示:

function is_it_nodejs() {
if (typeof window === 'undefined') return true;

var backup = window,
window_can_be_deleted = delete window;
window = backup; // Restoring from backup

return window_can_be_deleted;
}

关于javascript - 如何检查我的代码是否在 NodeJs 中运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14398117/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com