我试图在火狐中使用let和yield。我正在测试这两个版本的18和21 (夜间),并得到相同的结果。
下面是我非常简单的测试脚本:
<html>
<head>
<title>test</title>
<script type="text/javascript">
'use strict';
function a() {
yield 5;
}
</script>
</head>
<body></body>
</html>我知道这个错误:

类似地,当我用let做一个简单的测试时,我得到了"let是一个保留标识符“,这真的令人沮丧,因为let 从版本2开始就一直存在于Firefox中。!
奇怪的是,如果我在Firebug中执行相同的代码,它就会工作!
我尝试过在type和language属性中使用script标记中的其他字符串,但是没有找到一个有效的字符串。
到底怎么回事?我如何让这些东西与脚本标签一起工作?
编辑
嗯,我明白了,所以你必须指定版本号。我试过这个,但我的原始更复杂的脚本,使用网络工人。显然,在一个脚本上使用version=1.7,其中包括一个包含使用let和yield的脚本的web工作者,这是不够好的--网络工作者脚本仍然中断.然后,我尝试简化为最简单的情况,但显然没有在最简单的情况下尝试version=1.7。
谢谢..。可能会在(搜索后)发布另一个问题,关于如何让这个问题为网络工作者工作。
发布于 2013-01-15 05:34:51
正如mdn注解所说,
只有在
<script type="application/javascript;version=1.7">块(或更高版本)中包装的HTML中的代码块才能使用产率关键字。
因此,将<script type="text/javascript">更改为<script type="application/javascript;version=1.7">将使其工作。
https://stackoverflow.com/questions/14331617
复制相似问题