小编use*_*531的帖子

如何从ES6类中创建迭代器

我将如何以与JS1.7 SomeClass.prototype.__iterator__ = function() {...}语法相同的方式从ES6类中创建迭代器?

[编辑16:00]

以下作品:

class SomeClass {
    constructor() {
    }

    *[Symbol.iterator]() {
        yield '1';
        yield '2';
    }

    //*generator() {
    //}

}

an_instance = new SomeClass();
for (let v of an_instance) {
    console.log(v);
}
Run Code Online (Sandbox Code Playgroud)

WebStorm标记*[Symbol.iterator]()在asterix后面直接显示"函数名称预期"警告,但是否则会编译并与Traceur一起运行.(注意WebStorm不会生成任何错误*generator().)

javascript ecmascript-harmony ecmascript-6

59
推荐指数
5
解决办法
2万
查看次数

嵌套的ES6课程?

似乎可以在构造函数中嵌套一个类,然后可以从类中的任何地方实例化,这是官方的吗?

[编辑]例如,

class C {

    constructor() {
        class D {
            constructor() { }
        }
    }

    method() {
        var a = new D();  // works fine
    }

}

//var a = new D();  // fails in outer scope
Run Code Online (Sandbox Code Playgroud)

traceur生成了JS https://google.github.io/traceur-compiler/demo/repl.html

$traceurRuntime.ModuleStore.getAnonymousModule(function() {
  "use strict";
  var C = function C() {
    var D = function D() {};
    ($traceurRuntime.createClass)(D, {}, {});
  };
  ($traceurRuntime.createClass)(C, {method: function() {
      var a = new D();
    }}, {});
  return {};
});
//# sourceURL=traceured.js
Run Code Online (Sandbox Code Playgroud)

javascript ecmascript-6 traceur

50
推荐指数
3
解决办法
4万
查看次数

独立的断言库?

当我想到我应该在StackOverflow上询问是否有必要时,我几乎将YUI断言模块移植到独立库中.但是我完成了libs:

YUIPort:https://github.com/gso/YUIPort

但我想我也会适当地问.是否存在任何高质量的断言函数独立库 - 这些函数非常有用,例如,检查传递给函数的参数的有效性(可以节省大量时间调用调试器).

javascript

26
推荐指数
2
解决办法
1万
查看次数

覆盖setter,并且还必须覆盖getter

class AbstractClass {

    constructor() {
    }

    set property(value) {
        this.property_ = value;
    }

    get property() {
        return this.property_;
    }

}

class Subclass extends AbstractClass {

    constructor() {
        super();
    }

    set property(value) {
        super.property = value;
        if (!(this.property_ instanceof SubclassAssociatedClass)) throw new TypeError();
    }

    //get property() {
    //  return super.property;
    //}

}
Run Code Online (Sandbox Code Playgroud)

覆盖set属性的方法,看起来get方法也必须被覆盖,否则undefined返回(即,get方法不是继承的,取消注释get property()上面的子类方法,一切正常).

我认为这是规范的一部分,但如果行为是交叉编译的结果,可能会遵循.可以肯定的是,这是编码重写的setter和getter(同时还是根本没有)的正确方法?

javascript class getter-setter ecmascript-6 traceur

19
推荐指数
1
解决办法
1万
查看次数

有没有Javascript iCalendar lib?

是否有适用于Javascript的iCalendar库 - 解析器或日历对象本身?

javascript icalendar rfc2445

12
推荐指数
3
解决办法
2万
查看次数

Sublime coffeescript评论格式化?

有谁知道如何(或者如果可能)在Sublime中格式化coffeescript评论?

coffeescript sublimetext

4
推荐指数
1
解决办法
984
查看次数