首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >浏览器之外的生成器和“产量”

浏览器之外的生成器和“产量”
EN

Stack Overflow用户
提问于 2011-10-30 10:32:00
回答 2查看 317关注 0票数 0

在一篇描述JavaScript中的生成器和迭代器的MDN文章中,找到了JavaScript的代码片段。

代码语言:javascript
复制
function simpleGenerator(){  
  yield "first";  
  yield "second";  
  yield "third";  
  for (var i = 0; i < 3; i++)  
    yield i;  
}  

var g = simpleGenerator();  
print(g.next()); // prints "first"  
print(g.next()); // prints "second"  
print(g.next()); // prints "third"  
print(g.next()); // prints 0  
print(g.next()); // prints 1  
print(g.next()); // prints 2  
print(g.next()); // StopIteration is thrown  

上面我们读到:

属性包装的HTML中的代码块只能使用产率关键字。

代码语言:javascript
复制
<script type="application/javascript;version=1.7">

块(或更高版本)。

实际上,当嵌入HTML文件并包含在前面的标记中时,代码片段可以正常工作。问题是,我在Rhino上尝试过,它似乎在HTML和浏览器之外不起作用。

那么,我如何使用浏览器之外的生成器呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-10-30 10:37:28

特性

要启用JavaScript 1.7支持,必须使用Context.setLanguageVersion() API调用将版本设置为170。如果使用的是Rhino,则可以在命令行中指定-version 170,也可以在shell执行的代码中调用version(170)

票数 2
EN

Stack Overflow用户

发布于 2014-12-09 18:58:18

改变背景:

代码语言:javascript
复制
            Context ctx = Context.enter();
            ctx.setLanguageVersion(Context.VERSION_1_7);
            try {

             CompilerEnvirons compEnv = new CompilerEnvirons();
             compEnv.initFromContext(ctx);

             ...

            }
            finally { Context.exit(); }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7944389

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档