ES6 物件擴充套件

2021-08-28 19:50:29 字數 1545 閱讀 3829

es6對物件進行了一系列的擴充套件,其中包括書寫方式及函式;

1、物件簡寫

2、可計算屬性

let name = 'angela';

let front = 'lee-';

let obj = , // 等同於 getname: function() {}

[front + name]: name // 可擴充套件屬性;

}obj.getname();

3、關於物件新增的方法;

靜態方法: object.is() (勉強這麼說…加強的比較運算子)

console.log(nan == nan) // false

console.log(nan === nan) // false

console.log(object.is(nan,nan)) // true

console.log(object.is(+0,-0)); // false

console.log(+0 === -0); //true

console.log(object.is(,0)); // false

console.log( == 0); // true

object.assign(obj1,obj2,obj3,...,objn) mix-in 將物件混合,將obj2-objn轉殖到obj1中; 

let obj = 

let obj1 =

let obj2 =

var objm = object.assign(obj,obj1,obj2);

console.log(objm); // objm =

obj.name = 'this has been changed';

obj2.age = 22; // 深度轉殖

console.log(objm); // name 改變了

console.log(objm === obj); // true 返回obj,並沒有生成新物件,而是對obj進行操作

var obj = 

var obj1 =

console.log(object.keys(obj)); //拿出物件的key值,陣列形式 ['name','age','***']

console.log(object.values(obj)); // 拿出物件的value值,陣列形式 ['angela',18,'female']

console.log(object.entries(obj)) // 拿出物件的key-value值,陣列形式[['name','angela'],['age',18],['***','female']];

object.setprototypeof(obj,obj1) // 將obj的原型設定為obj1

console.log(object.getprototypeof(obj)); // 獲取obj1的原型;obj1 = {}

console.log(obj1.isprototypeof(obj)); //true

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中,我們直接使用變數名稱來定義就可以了。是不...