物件的屬性
屬性表示法
es6 允許在大括號裡面,直接寫入變數和函式,作為物件的屬性和方法es5
let name =
"張無忌"
;function
sayme()
// es5定義物件的屬性和方法的方式
var obj =
;console.
log(obj.name)
;//張無忌
es6
let name =
"張無忌"
;function
sayme()
// es6允許將變數名和函式名直接作為物件的屬性和方法的方式
var obj =
;console.
log(obj.name)
;//張無忌
object的方法
object.is()的方法
est 5比較兩個值是否相等,使用的是相等運算子( = = )和全等運算子( = = = )。但這兩個運算子在使用時都具有缺點:
es6提出了同值相等
( same - value equality )演算法來解決以上問題。objectis() 方法就是對同值相等演算法的具體實現。.
// es5 .
console.
log(+0
===-0)
;// true
console.
log(
nan===
nan)
;// false
// es6
console.
log(object.is(
+0,-
0));
// false
console.
log(object.is(
nan,
nan));
// true
object.assign()的方法用於將所有可列舉
屬性的值從乙個或多個源物件複製到目標物件。
object.assign(target,...sources)
var obj =
;var target =
;let result = object.
assign
(target, obj)
;console.
log(result, target)
;//
target.name =
'周芷若'
console.
log(obj.name)
;// 張無忌
object.assign()方法只會拷貝源物件自身的並且可列舉的屬性到目標物件。super關鍵字
用於指向當前物件
的原型物件
。
function
hero()
};}hero.prototype.age =18;
var hero =
newhero()
;hero.
sayme()
;hero.
sayyou
=function()
;hero.
sayyou()
;var prop =
;var obj =,}
;object.
setprototypeof
(obj, prop)
;obj.
sayme()
;
super關鍵字表示原型物件
時,只能用在物件的方法之中,用在其他地方都會報錯。
物件的擴充套件運算子
物件的擴充套件運算子(…)用於取出引數物件的所有可遍歷屬性,拷貝到當前物件之中。
var obj =
;// 將元物件的可列舉的屬性複製到目標物件。
var target =
;console.
log(target)
;//
ES6擴充套件
模板字串和標籤模板 const getcourselist function const getcourselist function foo val if status let ul document.createelement ul ul.innerhtml arr.join else pads...
es6擴充套件
擴充套件 1.字串擴充套件 var str hello world substring 1,4 從第1個到第 4 1 個 substr 1,4 從第乙個往後面數四個 重要事項 與 slice 和 substr 方法不同的是,substring 不接受負的引數。indexof searchvalue,...
重走es6之es6物件
看到這裡突然就想到,你有物件嗎?我沒有 哭的超大聲 es6中規定可以直接在物件中寫入變數和函式作為物件的屬性和方法,此時屬性名為變數名,屬性值為變數的值。物件的簡寫在專案中使用頻率極其高。let name zhangsan let age 18let obj console.log obj 結果為 ...