2013-02-17 32 views
0

我有這樣的代碼:最小化對象

var methods = { 
    collapse: function(element) { 
     modify(element); 
    }, 
    other_method: function() { 
     // ... 
    } 
}; 

function modify(element) 
{ 
    console.log('collapse method'); 
} 

是否有可能來縮小collapse方法一條線?所以它應該總是調用modify函數。

+0

你可以只分配'modify'的屬性:'崩潰:modify'。 (這與jQuery或HTML沒有任何關係)。 – 2013-02-17 19:42:43

+0

@FelixKling謝謝,這是一個錯字。它的':'在原始文件中。 – Jasper 2013-02-17 19:44:44

回答

2

試試這個:

var methods = { 
    collapse: modify, 
    other_method: function() { 
     // ... 
    } 
}; 

function modify(element) { 
    console.log('collapse method'); 
} 

因爲我們有函數聲明(不表達),modify是可見的,當你聲明對象methods。這裏完成的東西只是設置collapse等於modify的參考。

這是一樣的:

var modify = function (element) { 
    console.log('collapse method'); 
} 

var methods = { 
    other_method: function() { 
     // ... 
    } 
}; 
methods.collapse = modify;