我尝试检查以确保对象在返回之前包含值,但我似乎无法将1 this.map_options.map_type(1)
的值传递给匿名函数,因为console.log
显示undefined
。
MarvMap.prototype.init = function() {
loadApi.call(this);
// Setup map options and map reference
this.mapReference = null;
this.map_options = {
map_type: function(i) {
console.log(i);
let x = [ 'test1', 'test2', 'test3', 'test4' ];
if (x[i] !== undefined) {
return x[i];
} else { exit(this.errors.map_type(i)); }
}.call(this)
};
build.call(this);
};
这就是我尝试从map_options.map_type
检索价值的方法。
console.log('MapType: ' + this.map_options.map_type(1));
答案 0 :(得分:2)
以下是我如何管理它:
+ geom_bar(stat="identity",position = "dodge")
您需要使用<script>
function MarvMap (){
}
MarvMap.prototype.init = function() {
// Setup map options and map reference
this.mapReference = null;
this.map_options = {
map_type: function(i) {
console.log(i);
let x = [ 'test1', 'test2', 'test3', 'test4' ];
if (x[i] !== undefined) {
return x[i];
} else { }
}.bind(this)
};
};
var a = new MarvMap();
a.init();
console.log('MapType: ' + a.map_options.map_type(1));
</script>
代替bind
。