From 4473142341d085c0368f29cc60e2974dfd9b779c Mon Sep 17 00:00:00 2001 From: ruanyf Date: Fri, 4 Dec 2015 22:15:13 +0800 Subject: [PATCH] fix error --- docs/intro.md | 8 ++++---- docs/proxy.md | 44 +++++++++++++++++++------------------------- 2 files changed, 23 insertions(+), 29 deletions(-) diff --git a/docs/intro.md b/docs/intro.md index ae5b353..43ec3a6 100644 --- a/docs/intro.md +++ b/docs/intro.md @@ -215,7 +215,7 @@ $ npm install babel-core@5 下面是`Babel`配合`Browserify`一起使用,可以生成浏览器能够直接加载的脚本。首先,安装`babelify`模块。 ```bash -$ npm install --save-dev babelify babel-preset-2015 +$ npm install --save-dev babelify babel-preset-es2015 ``` 然后,再用命令行转换ES6脚本。 @@ -241,10 +241,10 @@ $ browserify script.js -o bundle.js \ Node脚本之中,需要转换ES6脚本,可以像下面这样写。 -先安装`babel-core`和`babel-preset-2015`。 +先安装`babel-core`和`babel-preset-es2015`。 ```javascript -$ npm install --save-dev babel-core babel-preset-2015 +$ npm install --save-dev babel-core babel-preset-es2015 ``` 然后,在项目根目录下新建一个`.babelrc`文件。 @@ -395,7 +395,7 @@ $ npm install -g traceur 安装成功后,就可以在命令行下使用traceur了。 -traceur直接运行es6脚本文件,会在标准输出显示运行结果,以前面的calc.js为例。 +traceur直接运行es6脚本文件,会在标准输出显示运行结果,以前面的`calc.js`为例。 ```bash $ traceur calc.js diff --git a/docs/proxy.md b/docs/proxy.md index 119c289..96d8a2d 100644 --- a/docs/proxy.md +++ b/docs/proxy.md @@ -137,9 +137,9 @@ fproxy.foo; // 'Hello, foo' 拦截`for (var x in proxy)`,返回一个遍历器。 -**(6)hasOwn(target, propKey)** +**(6)has(target, propKey)** -拦截`proxy.hasOwnProperty('foo')`,返回一个布尔值。 +拦截`in`运算符,返回一个布尔值。 **(7)ownKeys(target)** @@ -820,30 +820,24 @@ var loggedObj = new Proxy(obj, { ## Reflect对象的方法 -Reflect对象的方法清单如下。 +Reflect对象的方法清单如下,共14个。 -- Reflect.getOwnPropertyDescriptor(target,name) -- Reflect.defineProperty(target,name,desc) -- Reflect.getOwnPropertyNames(target) -- Reflect.getPrototypeOf(target) -- Reflect.setPrototypeOf(target, prototype) -- Reflect.deleteProperty(target,name) -- Reflect.enumerate(target) -- Reflect.freeze(target) -- Reflect.seal(target) -- Reflect.preventExtensions(target) -- Reflect.isFrozen(target) -- Reflect.isSealed(target) -- Reflect.isExtensible(target) -- Reflect.has(target,name) -- Reflect.hasOwn(target,name) -- Reflect.keys(target) -- Reflect.get(target,name,receiver) -- Reflect.set(target,name,value,receiver) - Reflect.apply(target,thisArg,args) - Reflect.construct(target,args) +- Reflect.get(target,name,receiver) +- Reflect.set(target,name,value,receiver) +- Reflect.defineProperty(target,name,desc) +- Reflect.deleteProperty(target,name) +- Reflect.has(target,name) +- Reflect.ownKeys(target) +- Reflect.enumerate(target) +- Reflect.isExtensible(target) +- Reflect.preventExtensions(target) +- Reflect.getOwnPropertyDescriptor(target, name) +- Reflect.getPrototypeOf(target) +- Reflect.setPrototypeOf(target, prototype) -上面这些方法的作用,大部分与Object对象的同名方法的作用都是相同的。下面是对其中几个方法的解释。 +上面这些方法的作用,大部分与`Object`对象的同名方法的作用都是相同的,而且它与`Proxy`对象的方法是一一对应的。下面是对其中几个方法的解释。 **(1)Reflect.get(target,name,receiver)** @@ -876,15 +870,15 @@ Reflect.get(obj, "foo", wrapper); **(5)Reflect.construct(target, args)** -等同于`new target(...args)`,这提供了一种不使用new,来调用构造函数的方法。 +等同于`new target(...args)`,这提供了一种不使用`new`,来调用构造函数的方法。 **(6)Reflect.getPrototypeOf(obj)** -读取对象的\_\_proto\_\_属性,等同于`Object.getPrototypeOf(obj)`。 +读取对象的`__proto__`属性,对应`Object.getPrototypeOf(obj)`。 **(7)Reflect.setPrototypeOf(obj, newProto)** -设置对象的\_\_proto\_\_属性。注意,Object对象没有对应这个方法的方法。 +设置对象的`__proto__`属性,对应`Object.setPrototypeOf(obj, newProto)`。 **(8)Reflect.apply(fun,thisArg,args)**