我在一个名为thing.js的文件中有一个javascript“模块”(我们在python中称之为):
function Thing(){
this.a = "foo";
this.b = "bar";
this.c = "";
this.d = function(){
this.c = this.a + this.b;
};
};
var things = {
'one':Thing(),
'two':Thing(),
'three':Thing()
};
alert(things["one"]); // output: undefined!!??
/* Pick out two random items from things. */
var random_thing = function(){
//var grabbed = 0;
//while(grabbed < 1){
var pick = getRandomInt(0,2);
alert(things["one"]); // output: undefined!!
//if ()
//return pick;
};
代码有点不完整,我想从事物中随机挑选出两个项目并返回。不过,这不是眼前的问题。
我有一个名为 main.js 的单独的“主”javascript 文件,它调用这些对象和函数:
$div1.append(random_thing());
在我的 html 文件中,我包含了两个 javascript 文件:
<script type="text/javascript" src="thing.js"></script>
<script type="text/javascript" src="main.js"></script>
但是我不断得到的输出是“未定义”的警报(事物['one'])!我不明白第一个警报是如何返回未定义的,它就在事物关联数组的定义之下。