Weird-JavaScript 15:創造物件、物件實字

請用物件實字法創造物件。

物件實字(Object Literals)

物件實字,就是用 {} 來創造一個新的物件,並直接在裡面定義我們所欲的 Name/Value Pairs。

1
2
3
4
5
6
7
8
9
10
var favoriteFood = {
name: 'Fei',
delicacy: {
taiwanese: ['oyster omelet', 'egg roll'],
westerm: ['spaghetti','fried chicken'],
japan: ['sashimi', 'ramen']
},
drink: ['bubble tea', 'latte'],
moneyLeft: 877
}

物件實字本身簡潔明瞭,是最常被用來創造物件的方法,其本身也可以被當作參數傳入函式

1
2
3
4
5
6
7
function callName(person){
console.log('Hello! I\'m ' + person.name + '. I am ' + person.age + ' years old.') ;
}
callName({
name: 'Fei',
age: 23
}) ;

new Object()

另一種方式是,用 new Object() 創造物件後,利用 .[] 運算子一一新增所欲的屬性和方法,使用上不比實字表示法來得方便直覺。

1
2
3
4
5
6
7
8
var John = new Object() ;

John.age = 30 ;
John.hobby = ['eat', 'sleep', 'working'] ;
John['residence'] = new Object() ;
John['residence']['city'] = 'Taipei' ;
John['residence']['district'] = 'Daan' ;
console.log(John) ;


結論

  • 創造物件有兩種方式:利用物件實字 {}new Object()
  • 實務上多以物件實字法創造物件,但部分時候還是會用到 new 建構式來創造物件。

參考資料

  1. JavaScript 全攻略:克服 JS 奇怪的部分 3-31
Weird-JavaScript 16:物件的屬性、方法以及取用 Weird-JavaScript 14:存在與布林、條件判斷與預設值

評論

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×