小编Joh*_* L.的帖子

我可以使用ES2015课程扩展代理吗?

我试图扩展代理,如下:

class ObservableObject extends Proxy {}
Run Code Online (Sandbox Code Playgroud)

我使用Babel将其转换为ES5,我在浏览器中收到此错误:

app.js:15 Uncaught TypeError: Object prototype may only be an Object or null: undefined
Run Code Online (Sandbox Code Playgroud)

我查看了它指向的代码行.这是代码的一部分,箭头指向有问题的代码行:

var ObservableObject = exports.ObservableObject = function (_Proxy) {
    _inherits(ObservableObject, _Proxy); // <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

    function ObservableObject() {
        _classCallCheck(this, ObservableObject);

        return _possibleConstructorReturn(this, Object.getPrototypeOf(ObservableObject).apply(this, arguments));
    }

    return ObservableObject;
}(Proxy);
Run Code Online (Sandbox Code Playgroud)

有谁知道为什么我可能会收到此错误?这是巴贝尔的错误吗?当您尝试扩展代理时应该发生什么?

javascript ecmascript-6 babeljs es6-proxy

32
推荐指数
4
解决办法
7535
查看次数

不循环遍历数组中的所有项目

this.draw = function() {
    console.log(this.buttonList.length);
    for(a = 0; a < this.buttonList.length; a++) {
        console.log(this.buttonList.length, a);
        this.buttonList[a].draw();
    }
};
Run Code Online (Sandbox Code Playgroud)

所以我在一个对象中有这个功能,并且它没有像我预期的那样工作.当我使用上述console.log语句运行它时,它会在控制台上记录它:

2
2 0
Run Code Online (Sandbox Code Playgroud)

这似乎告诉我,我的for循环并没有循环遍历阵列上的每个项目,而且我一直在思索为什么那将是相当长一段时间.有谁知道为什么它只执行a = 0的动作?

编辑:我不知道这是否有所不同,但这个函数每秒调用约60次.

javascript arrays for-loop

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

标签 统计

javascript ×2

arrays ×1

babeljs ×1

ecmascript-6 ×1

es6-proxy ×1

for-loop ×1