屬性和值的簡寫:如果屬性和值的名稱相同,可以簡寫為obj
函式也可以簡寫hello(){}
let foo=
"你好"
;let obj=
,// 相當於hello:function (){},
info()
,};console.
log(obj)
;
物件中的getter setter
訪問器(使用時是get
和set
)
es5object.defineproperty
設定
let obj =
object.
defineproperty
(obj,
"_num",,
set:
function
(val)
else
}catch
(err)}
})obj._num=2;
//設定值
es6中
//get set 訪問器是給物件封裝屬性的
let obj =
,set
names
(val)
else
}catch
(err)}
}obj.names=
"張三"
;console.
log(obj.names)
;
1)解構賦值,對應有的就賦值,沒有的合併為物件
2)引用空間:凡是修改引用的值都會修改原值
例一:
x是解構賦值所在的物件,拷貝了物件obj的a屬性。a屬性引用了乙個物件,修改這個物件的值,會影響到解構賦值對它的引用。
let obj =};
let=obj;
obj.a.b=2;
console.
log(x)
;//2
例二:
let a=[,
2,3]
;let b=
[...a];b[
0].m=2
;console.
log(a)
;
3)物件擴充套件符:
let=;
console.
log(a,b)
;//23
ES6 物件擴充套件
es6 允許直接寫入變數和函式,作為物件的屬性和方法 var key1 1 var bj var bz 方法的簡寫 var ob fn2 表示式還可以用於定義方法名。var lastword last word var a a first word hello a lastword world a ...
ES6物件擴充套件
es6允許直接寫入變數和函式,作為屬性名和方法 var a b var c c 如果屬性值與屬性名一樣,我們值寫屬性名就可以 方法簡寫 add add function 定義物件屬性有兩種方法 obj.name lijixuan 2obj name lijixuan 我們原本只能用識別符號定義屬性,...
ES6 物件擴充套件
物件擴充套件主要從四個方面開展 1.簡潔表示法 2.屬性表示式 3.擴充套件運算子 4.object新增方法 let es6 console.log es5,es6 object object 在es5中,我們去定義物件,多使用鍵值對的方式來定義,在es6中,我們直接使用變數名稱來定義就可以了。是不...