iT邦幫忙

1

JavaScript 基礎知識-物件搭配 function

前面講到了物件的屬性讀取,那如果物件的某個屬性並非值而是一個函式呢?
這也是可行的,我們並非要賦予屬性一個值,也可以給予一個函式用來計算

假設 Jerry 的農場內有5隻小鴨,10隻小雞,柴犬和柯基兩隻狗,三塊玉米田分別有5根玉米、6根玉米、7根玉米
綜合以上來創建一個物件:

var farm = {
    duck: 5,
    chicken: 10,
    dogs: ['柴犬','柯基'],
    cornField: [5,6,7]
}

此時若要新增一個屬性用來計算總共有多少隻家禽,可以如下:

var farm = {
    duck: 5,
    chicken: 10,
    dogs: ['柴犬','柯基'],
    cornField: [5,6,7],
    poultry: function(){
        var total = this.duck + this.chicken;
        console.log(total);
    },
}

我們新增了一個 poultry 屬性,並給予一個計算小鴨跟小雞數量的函式(這裡函式可以不用命名),後面對於 this 會再說明,this 的使用法方可以說是博大精深,這裡可以暫且當作 farm 這個物件,當然除了上述的第一個方法,我們也可以中途加入 poultry 這個屬性,如下:

farm.poultry = function (){
    var total = this.duck + this.chicken;
    console.log(total);
}

而當我們在呼叫屬性且有函式時,會比較不一樣:

farm.poultry();

有屬性若為函式,需要跟前面講到函式時一樣,跟函式的呼叫一樣需要加括號

睽違好久,終於更新了 /images/emoticon/emoticon02.gif


尚未有邦友留言

立即登入留言