我刚才在MDN上看到了一个空白的存根,用于Reflectjavascript中的对象,但是我无法在Google的生活中找到任何东西.今天我发现了这个http://people.mozilla.org/~jorendorff/es6-draft.html#sec-reflect-object,除了领域和加载器功能外,它听起来与Proxy对象类似.
基本上,我不知道我找到的这个页面是否只解释了如何实现Reflect,或者我是否只是无法理解其措辞.有人可以请大家向我解释一下Reflect做什么方法?
例如,在我发现的页面上,调用Reflect.apply ( target, thisArgument, argumentsList )
将"返回使用参数thisArgument和args调用目标的[[Call]]内部方法的结果." 但是这与调用target.apply(thisArgument, argumentsList)有何不同?
更新:
感谢@Blue,我在维基上找到了这个页面
http://wiki.ecmascript.org/doku.php?id=harmony:reflect_api&s=reflect据
我所知,反射对象提供了所有的方法版本代理可以捕获的操作使转发更容易.但这对我来说似乎有点奇怪,因为我看不出它是如何完全必要的.但它似乎做了一点点,特别是那个标准double-lifting但但是指向旧的代理规范/
我正在使用babelify版本6.3.0设置为第0阶段.ES6/ES7工作得很好.但是当我尝试使用Javascript的代理功能时:
set product(product={}) {
this._product = new Proxy({}, {})
}
Run Code Online (Sandbox Code Playgroud)
我明白了:
ReferenceError: Can't find variable: Proxy
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
我有一个全局变量,它的类型是String:
window.my_global_var = 'string';
Run Code Online (Sandbox Code Playgroud)
它可能会被某些外部加载的 JavaScript 文件或 AJAX 请求更改。所以我想观看它并在更新时调用回调。
我搜索了一段时间,但发现 Object.observe 已经被弃用。我找到了答案,但它更好地用于观察对象,而不是字符串 window.variable。
最糟糕的方法是使用 asetInterval来观看它,但我想这太愚蠢了。
有什么好的方法可以做到这一点吗?
我想知道是否可以使用MutationObserver监视window.location.pathname(或window.location.hash)中的更改。