Chrome javascript代理对象未定义

Chrome javascript Proxy object is not defined

本文关键字:未定义 对象 代理 javascript Chrome      更新时间:2023-09-26

我想对EMCAScript 6中引入的Proxy对象进行实验,如本文所述:http://ariya.ofilabs.com/2013/07/es6-and-proxy.html

然而,当我想运行示例代码时:

var engineer = { name: 'Joe Sixpack', salary: 50 };
var interceptor = {
  set: function (receiver, property, value) {
    console.log(property, 'is changed to', value);
    receiver[property] = value;
  }
};
engineer = Proxy(engineer, interceptor);

我得到了一个错误,代理没有定义。有人知道更多关于Chrome中对代理的支持吗?我在Mac上使用的是Chrome版本33.0.1750.152。

如果你使用的是Chrome,那么ES6的大部分功能都隐藏在功能切换后面。浏览到chrome://flags,找到标题为"启用实验JavaScript"的部分,并使其启用支持:chrome://flags/#enable-javascript和谐

激活后,重新启动您的chrome浏览器,它应该可以工作

V8在4.9 中发布了对Proxy的完全支持

来源;http://v8project.blogspot.de/2016/01/v8-release-49.html

Chrome 49使用V8 4.9

只需从带有标志--js-flags="--harmony-proxies"的命令行启动chrome,或将其添加到chrome的快捷方式

在https://github.com/anywhichway/chrome-proxy.如果您的需求是基本的,那么这应该会让您度过难关,直到v8团队完成重新实现。