我有一个对象,该对象在对象内使用函数返回值。我想在代码的其他领域中使用相同的功能。我可以在对象外部有功能,然后称其为?
我尝试在对象之外创建功能,然后调用它,但对我不起作用。此代码工作正常
var split_object = {
all: {
h2_name:"Enterprise view",
},
impact_overall: {
h2_name: function impactHeader() {
var splitOpts = $('#splitBy option:selected').text();
var impactOpts = $('#changeImpact option:selected').text();
if (splitOpts == 'Split by Impact') {
return impactOpts;
}
}
},
}
我尝试将功能自行拉出,并像这样称呼它
impact_overall: {
h2_name: impactHeader();
},
替换以下内容:
`impact_overall: {
h2_name: impactHeader();
},`
与此:
`impact_overall: {
h2_name: function() {impactHeader();}
},
您添加了不必要的semicolon
impact_overall: {
h2_name: impactHeader(); // <-- Here
},
只需删除
要重用对象中的代码,您可以使用上下文切换。您可以通过以下示例实现此目标。
obj中的geta((与其他obj重复使用。
var obj = {
a:'value',
getA: function(){
return this.a;
}
};
var otherObj = {a:'different value'};
obj.getA() // "value"
obj.getA.call(otherObj) // "different value"