我试图从可选择对象的函数内部访问 selectItems 数组,但不确定是否有办法在不将 _Multiselect 对象作为参数传递回函数的情况下执行此操作。还有其他方法吗?
function _MultiSelect() {
}
_MultiSelect.prototype = {
selectedItems: [],
selectable: {
myFunc: function(){
//how can I access selectedItems from here
}
}
}
最佳答案
一种选择是使可选择
一个函数,该函数返回一个包含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();
关于javascript - 访问父作用域中的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45491304/