我正在努力从函数调用返回数组-以下代码:
///////////// Generic Functions
function spotJoinPosition() {
var pos = {
offset: $('div#spotJoinSite').offset(),
width: $('div#spotJoinSite').width(),
height: $('div#spotJoinSite').height()
}
return(pos);
}
var positionData = spotJoinPosition();
alert(positionData);
alert(positionData[width]);
当我警告positionData时,我得到[object] [object],然后未定义。
建议?
最佳答案
alert(positionData[width]);
这将警告positionData中的键,并使用变量width
作为键。您尚未定义一个名为width
的变量,因此它实际上是在查找positionData[undefined]
。您想要的是positionData.width
或positionData['width']
,但是这里没有引号的原因。
仅当您的键具有非字母数字字符时,才需要使用引号。 positionData['some-key']
有效,但是positionData.some-key
是语法错误,因为变量中不能包含-
。
另外,您的代码应该出错,因为宽度没有在任何地方定义。我担心您的代码中某处有一个全局定义的width
变量。