我已经设法用jquery做了一些关于我的小细节:我怎么能将一个下标运算符应用于jquery调用的结果,这似乎返回该索引处的dom元素? Javascript不支持运算符重载,所以我猜它实际上是返回类型'array'...但是你也可以在这个数组上使用整个jquery方法,但是查看源代码我只看到'slice'和'push'添加到Array.prototype ...
一旦我知道了这个问题的答案,我可能会在这个主题范围内再提一些问题......
答案 0 :(得分:3)
您可以使用“数组样式”方括号语法访问任何 JavaScript对象的属性:
var someObj = {
someProp : "test"
};
alert(someObj["someProp"]); // alerts "test"
jQuery只是确保从$()
函数返回的对象具有与数字索引对应的属性,以及比最高数字索引高一个的length
属性。
someObj[0] = "test";
someObj[1] = "whatever";
someObj.length = 2;
简单(非jQuery)演示:http://jsfiddle.net/nnnnnn/pguDH/
请注意,在实践中,对象属性名称始终是字符串。如果您提供一个数字,它将转换为字符串。甚至可以使用字符串访问“真正的”数组元素:
someArray["1"]
// give same results as
someArray[1]