迭代jQuery选择器的jQuery each
方法:
$('.foo').each(function(){
...this...
});
$.each($('.foo'), function(index, object){
...object...
});
似乎在上面的第一个示例中将普通的JavaScript对象分配给this
关键字,在第二个示例中分配object
变量。
我对jQuery的印象是,只要返回表示DOM的某个对象,它就通过返回jQuery对象而不是普通的JavaScript对象来简化方法的链接。但是在这里,看来我不能仅将this
或object
用作jQuery对象并这样做:
this.text('color', 'red')
object.css('color', 'red')
但是我必须将它们变成jQuery对象:
$(this).text('color', 'red')
$(object).css('color', 'red')
我的理解正确吗?为什么会这样呢?我想知道这个设计决定背后的逻辑。