ImportScripts() 网络工作者变量范围

ImportScripts() web worker scope of variables

是否有此代码

if (typeof importScripts === 'function') {

importScripts('somelib.js');

}

//some code between

if (typeof importScripts === 'function') {
    var i = some_function_from_imported_lib(params);
//CODE CODE CODE
}

相同
if (typeof importScripts === 'function') {

importScripts('somelib.js');
    var i = some_function_from_imported_lib(params);
//CODE CODE CODE
}

?

换句话说,importScripts() 是否被括号括起来有关系吗? somelib.js 中的函数和变量的范围重要吗?

这完全取决于:

//some code between

如果 "some" 代码对导入的库函数或您的参数没有 任何 影响,则:

if (typeof importScripts === 'function') {
    importScripts('somelib.js');
}
//some code between
if (typeof importScripts === 'function') {
    var i = some_function_from_imported_lib(params);
}

在功能上等同于:

if (typeof importScripts === 'function') {
    importScripts('somelib.js');
    var i = some_function_from_imported_lib(params);
}

那些 if 块没有自己的作用域。