0
我曾经在一个js文件中定义的对象:变量 “没有定义” 的错误,为什么
myobj.js
MyObj={
test: {
value: {a: 10, b: 7},
startTest: function(){
var x = this.value.a;
var y = this.value.b;
return {x: x, y: y};
}
}
}
在另一个js文件我把这个目标函数:
other.js
mytest = MyObj.test.startTest //assign starTest function to mytest
var a = mytest().x;
var b = mytest().y;
我的index.html:
<body>
<script src="myobj.js"></script>
<script src="other.js"></script>
</body>
我从萤火误差在myobj.js:
“
this.value
” 是不在 行定义 “this.value.a;
”
为什么?
可能重复[为什么我得到 “未定义” 的错误?(http://stackoverflow.com/questions/5699861/why- i-got-undefined-error) – Mat 2011-04-18 08:05:06
不,与我以前的帖子不一样 – Mellon 2011-04-18 08:05:42
这是个人喜好:我不喜欢你如何声明MyObj。我更喜欢“函数MyObj(){[...]}”。 startTest内部函数相同:I优先使用“this.startTest = function(){[...]}”。这些是更“标准”的方式。请参阅此StackOverflow问题,并提供非常好的答案:http://stackoverflow.com/questions/1595611/how-to-properly-create-a-custom-object-in-javascript – dmarucco 2011-04-18 08:07:53