如何从jQuery对象中获取值?

Jan*_*nis 5 arrays jquery object

我正在返回一些数据(下面的示例)并将其保存到jQuery对象(或者这是一个数组,我让两者混淆?)当我记录变量时,它具有我正在寻找的值的对象但是如何做我访问这个对象里面的数据?

$itemPosition = {
    'top': $item.offset().top,
    'left':$item.offset().left
},

console.log($itemPosition);
Run Code Online (Sandbox Code Playgroud)

这将退出(在这种情况下预期) top: 0&left: 490.

但我怎么知道这些价值观的工作呢?

此外,虽然这可能很明显我仍处于学习jQuery/Javascript的早期阶段,但请放心,参考书已经开始了,但到目前为止,SO社区对我的学习非常宝贵,所以感谢阅读!

J.

use*_*716 13

这是一个简单的javascript对象.不是jQuery对象而不是数组.

访问对象的属性将如下所示:

 $itemPosition.top;
 $itemPosition.left;
Run Code Online (Sandbox Code Playgroud)

将a $作为名称的第一个字符放置是有效的,但可能会导致混淆,因为它是存储jQuery对象时使用的约定.

访问对象属性的另一种有效方法是使用方括号,如下所示:

 $itemPosition['top'];
 $itemPosition['left'];
Run Code Online (Sandbox Code Playgroud)

使用方括号方法,您还可以传入变量,如下所示:

var myTopString = 'top';

$itemPosition[myTopString];
Run Code Online (Sandbox Code Playgroud)

如果要迭代对象中的所有值,可以执行以下操作:

for(var n in $itemPosition) {
    alert( n + ': ' + $itemPosition[n] );
}
Run Code Online (Sandbox Code Playgroud)

这将alert()是每个对象属性的关键和值.如您所见,它使用方括号方法,为存储在变量中的每个属性传入键n.

这就是我要说的全部内容.-F.阿甘