mirror of
https://github.com/ruanyf/es6tutorial.git
synced 2025-05-24 18:32:22 +00:00
commit
1cc1735c8d
@ -11,7 +11,7 @@ ES6新增了let命令,用来声明变量。它的用法类似于var,但是
|
||||
var b = 1;
|
||||
}
|
||||
|
||||
a // ReferenceError: a is not defined.
|
||||
a // ReferenceError: a is not defined.
|
||||
b //1
|
||||
|
||||
```
|
||||
@ -102,10 +102,10 @@ function f1() {
|
||||
```javascript
|
||||
|
||||
// IIFE写法
|
||||
(function () {
|
||||
(function () {
|
||||
var tmp = ...;
|
||||
...
|
||||
}());
|
||||
}());
|
||||
|
||||
// 块级作用域写法
|
||||
{
|
||||
@ -115,7 +115,7 @@ function f1() {
|
||||
|
||||
```
|
||||
|
||||
另外,ES6也规定,函数的作用域为其所在的块级作用域。
|
||||
另外,ES6也规定,函数本身的作用域,在其所在的块级作用域之内。
|
||||
|
||||
```javascript
|
||||
|
||||
|
@ -30,13 +30,13 @@ target // {a:1, b:2, c:3}
|
||||
|
||||
```
|
||||
|
||||
注意,如果源对象与目标对象有同名属性,则前者会覆盖后者。
|
||||
注意,如果目标对象与源对象有同名属性,或多个目标对象有同名属性,则前者会覆盖后者。
|
||||
|
||||
```javascript
|
||||
|
||||
var target = { a: 1, b: 1 };
|
||||
|
||||
var source1 = { b: 2 };
|
||||
var source1 = { b: 2, c: 2 };
|
||||
var source2 = { c: 3 };
|
||||
|
||||
Object.assign(target, source1, source2);
|
||||
@ -81,14 +81,14 @@ var o = Object.setPrototypeOf({}, null);
|
||||
|
||||
function (obj, proto) {
|
||||
obj.__proto__ = proto;
|
||||
return obj;
|
||||
return obj;
|
||||
}
|
||||
|
||||
```
|
||||
|
||||
**(3)Object.getPrototypeOf()**
|
||||
|
||||
与setPrototypeOf()配套的,还有getPrototypeOf(),用于读取一个对象的prototype对象。
|
||||
该方法与setPrototypeOf()配套,用于读取一个对象的prototype对象。
|
||||
|
||||
```javascript
|
||||
|
||||
@ -177,7 +177,7 @@ ES6引入了一种新的原始数据类型symbol。它通过Symbol函数生成
|
||||
|
||||
var mySymbol = Symbol('Test');
|
||||
|
||||
mySymbol.name
|
||||
mySymbol.name
|
||||
// Test
|
||||
|
||||
typeof mySymbol
|
||||
@ -206,7 +206,7 @@ function f(w) {
|
||||
case w3:
|
||||
...
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
```
|
||||
|
||||
@ -214,7 +214,7 @@ function f(w) {
|
||||
|
||||
由于这种特点,Symbol类型适合作为标识符,用于对象的属性名,保证了属性名之间不会发生冲突。如果一个对象由多个模块构成,这样就不会出现同名的属性。
|
||||
|
||||
Symbol类型作为属性名,可以被遍历,Object.getOwnPropertySymbols()和Object.getOwnPropertyKeys()都可以获取该属性。
|
||||
Symbol类型作为属性名,可以被遍历,Object.getOwnPropertySymbols()和Object.getOwnPropertyKeys()都可以获取该属性。
|
||||
|
||||
```javascript
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user