【发布时间】:2016-07-20 11:04:17
【问题描述】:
我是 javascript 和模块模式的新手。 所以我正在尝试编写以下小库
(function(window, $){
'use strict';
function myLibrary(){
var myLib = {};
var options= {};
var map;
//_options = {'map':ol.map, 'geojson': testdata}
myLib.init = function init(_options){
options = _options;
map = _options.map;
console.log("Initializing ...");
console.log("map : "+ map);
console.log("options : "+ options);
}
myLib.map = map;
myLib.options = options;
return myLib;
}
if(typeof (window.testLib) === 'undefined'){
window.testLib = myLibrary();
}
})(window, $);
我首先使用以下参数调用 init 函数:
testLib.init( {'map':ol.map, 'geojson': testdata})
当我尝试访问地图和选项时出现问题
testLib.map // return undefined instead of the map object
testLib.options // reutrn {} instead of {'map':ol.map, 'geojson': testdata}
我在 init 中进行了分配,但它似乎不起作用。在 init() 中为 map 和 options 所做的分配似乎是 init() 本地的
我怎样才能对我用 var 声明的映射和选项进行分配??
感谢帮助
编辑:正确的句子,应该是:“我首先使用以下参数调用初始化函数:”
【问题讨论】:
标签: javascript design-patterns module