0

我有这样的代码:

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

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

是否可以将方法缩小collapse到一行?所以它应该总是调用modify函数。

4

1 回答 1

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;
于 2013-02-17T19:43:06.393 回答