Closed pecasha closed 1 year ago
仅仅通过 process 判断还是不太稳妥,如果用户声明了一个 window.process 的对象变量,这个判断就会有问题了。
并且判断 node 环境一般通过 global 做判断,用 process 的比较少,可以在原有的基础上再加上 global 是否存在的判断
仅仅通过 process 判断还是不太稳妥,如果用户声明了一个 window.process 的对象变量,这个判断就会有问题了。
所以还额外判断了process的原型类型,如果是用户创建的window.process对象,它的原型会是[object Object]
,除非刻意的修改了原型类型
通过判断
window
和document
对象是否存在来确定当前是browser还是nodejs环境,在有些场景中不合理,因为像electron
是browser+nodejs的,这样还是会被判断成是browser。 我觉得可以改为通过判断process
对象,如果process
对象存在则是nodejs,否则就是browser。 因为browser环境不存在process
,但是像electron
的browser+nodejs还是会存在window
和docuemnt
的。