1. 程式人生 > 程式設計 >ES6物件操作例項詳解

ES6物件操作例項詳解

本文例項講述了ES6物件操作。分享給大家供大家參考,具體如下:

ES6物件操作例項詳解

1.物件賦值

es5中的物件賦值方式如下:

let name="小明";
let skill= 'es6開發';
var obj= {name:name,skill:skill};
console.log(obj);

結果為:

ES6物件操作例項詳解

ES6允許把宣告的變數直接賦值給物件,例如:

let name="小明";
let skill= 'es6開發';
var obj= {name,skill};
console.log(obj);

結果與上述相同。

2.物件Key值構建

有時候我們會在後臺取出key值,而不是我們前臺定義好的,這時候我們可以我們可以把後臺定義的key值重新構建返回給後臺。

在前端我們可以用[ ] 的形式,進行物件的構建。

let key='skill';//假定是後臺定義的key值
var obj={
  [key]:'web' //構建key值
}
console.log(obj.skill);//web

3.自定義物件方法

物件方法就是把物件中的屬性,用匿名函式的形式程式設計方法。

var obj={
  add:function(a,b){
    return a+b;
  }
}
console.log(obj.add(1,2)); //3

4.Object.is( ) 物件比較

ES5的物件比較方法,經常使用===來判斷,如下:

var obj1 = {name:'admin'};
var obj2 = {name:'admin'};
console.log(obj1.name === obj2.name);//true

ES6為我們提供了is方法進行對比,如下:

var obj1 = {name:'admin'};
var obj2 = {name:'admin'};
console.log(Object.is(obj1.name,obj2.name))//true

區分=== 和 is方法的區別是什麼,看下面的程式碼輸出結果。

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

console.log(Object.is(+0,-0)); //false console.log(Object.is(NaN,NaN)); //true

記憶為:===為同值相等,is()為嚴格相等。

6.Object.assign( )合併物件

使用assgin( )可以實現像陣列一樣的合併操作。

var a={a:'a'};
var b={b:'b'};
var c={c:'c'};
let d=Object.assign(a,b,c)
console.log(d);

結果為:

ES6物件操作例項詳解

感興趣的朋友可以使用線上HTML/CSS/JavaScript程式碼執行工具:http://tools.jb51.net/code/HtmlJsRun測試上述程式碼執行效果。

更多關於JavaScript相關內容感興趣的讀者可檢視本站專題:《javascript面向物件入門教程》、《JavaScript錯誤與除錯技巧總結》、《JavaScript資料結構與演算法技巧總結》、《JavaScript遍歷演算法與技巧總結》及《JavaScript數學運算用法總結》

希望本文所述對大家JavaScript程式設計有所幫助。