我正在尝试从selectable对象中的函数内部访问selectItems数组,但不确定是否有一种方法可以将_Multiselect对象作为参数传递回函数中。还有其他方法吗?
function _MultiSelect() {
}
_MultiSelect.prototype = {
selectedItems: [],
selectable: {
myFunc: function(){
//how can I access selectedItems from here
}
}
}
最佳答案
一种选择是使selectable
一个函数返回一个包含myFunc
以及其他内容的对象。这使您可以捕获闭包中的_MultiSelect
上下文,并将其用于您公开的方法中。
_MultiSelect.prototype = {
selectedItems: [],
selectable: function() {
var context = this;
return {
myFunc: function(){
console.log(context.selectedItems);
//how can I access selectedItems from here
}
}
}
}
用例:
(new _MultiSelect).selectable().myFunc();