隨手小記(es6)

2022-08-22 02:30:18 字數 670 閱讀 2465

在學習前輩阮一峰大神寫的《ecmascript入門》一書的過程中,第九章中講到物件擴充套件時,第一條我就有點看不懂

es6允許直接寫入變數和函式,作為物件的屬性和方法。這樣的書寫更加簡潔。

var foo = 'bar';

var baz =;

baz

////

等同於var baz = ;

當時我就沒想太多,就這樣過去了,結果在學習react時碰到了乙個東西,研究之後讓我理解了上面的**:

在react的lifting state up中,它的例子用es6的語法寫了乙個類,繼承react.component,在建構函式中給出了狀態,然後自己重寫了乙個控制函式:

handlefahrenheitchange(value) );

}

當時就好奇這個setstate裡面的引數到底是什麼,研究了一下明白了,請看第一段**:宣告變數foo='bar',然後宣告乙個變數baz引用乙個物件,這個物件裡面只有乙個foo屬性,沒有值,這就是es6的新增語法,標題是《屬性的簡潔表示法》,真是當時看不懂,看懂了覺得自己好傻這都看不懂。

總結:es6的屬性裡,物件中如果給了屬性名卻沒有給屬性對應的值,則根據作用域鏈(之前我寫過的一篇部落格)查詢該屬性的同名變數,並將其值賦給該物件的該屬性;

es6隨手記 物件篇

1.屬性的簡潔表示法 const b 1 const a a function f x,y f 1,2 a 等同於 a function 2.屬性名可以的是表示式,但是要用括起來,然後屬性名表示式不能和簡潔表示法一起用 3.物件的擴充套件運算子.解構賦值 將物件中尚未讀取的屬性,分配到制定的物件上,...

es6隨手記 陣列篇

1.rest引數 形式為 變數名 另外rest引數只能作為引數的最後乙個出現,不然報錯。function a a,b a 1,2,3,4,5,6 2.擴充套件運算子.這種情況為rest引數的逆運算,將引數轉成用逗號隔開的引數序列。後面也可以跟表示式 let a 1,2,3,4,5 console.l...

es6隨手記 Class的基本語法

es6中的類 實際上是建構函式的另一種寫法 class aa var b new aa b.dostuff aaa 實際上類上的所有方法也都定義到了這個類的prototype屬性上 上面等同於 aa.prototype 類上定義的方法是不可列舉的,這個和es5中有所區別。所以可以使用下面方法 obj...