Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用JS1.7+;blob Worker中的关键字_Javascript_Html_Firefox - Fatal编程技术网

Javascript 使用JS1.7+;blob Worker中的关键字

Javascript 使用JS1.7+;blob Worker中的关键字,javascript,html,firefox,Javascript,Html,Firefox,我的问题是,当我试图在Web Worker中使用JavaScript1.7+关键字时,比如说let,它的源代码是一个blob,它会自动失败。 我使用的代码是 function myWorker() { let msg = 'hello'; postMessage(msg); } let blob = new Blob( ['(' + myWorker + ')();'], {'type': 'text/javascript;version=1.8'} ); let url =

我的问题是,当我试图在Web Worker中使用JavaScript1.7+关键字时,比如说
let
,它的源代码是一个blob,它会自动失败。 我使用的代码是

function myWorker() {
  let msg = 'hello';
  postMessage(msg);
}

let blob = new Blob(
  ['(' + myWorker + ')();'],
  {'type': 'text/javascript;version=1.8'}
);
let url = URL.createObjectURL(blob);
let worker = new Worker(url);
worker.onmessage = function(msg) alert('got message: ' + msg.data);
worker.postMessage(null);
如果将第一个
let
关键字替换为
var
,同样的代码也可以正常工作。
有没有办法让Firefox(我用21.0版和last stable 23.0版检查过)在一个blob中理解新的JS1.7+?

如果将type设置为1,这个问题是否仍然存在<代码>文本/javascript,2<代码>应用程序/javascript,3<代码>文本/ecmascript,4<代码>应用程序/ecmascript。编辑:bugzilla上似乎有一个公开的bug忘记提及了;FireFox/Gecko中的
let
等实际上来自JavaScript 1.7或ECMAScript 4规范,ECMAScript 6/Harmony版本只是继承了ES4的一部分。无论哪种方式,JavaScript 1.8.x都不是合适的名称。阅读错误报告,JavaScript1.5之后的所有新功能都不能保证在WebWorkers中像现在这样工作。感谢您指出错误。我把问题中的
1.8
改为
1.7+