首先,如果这是一个模糊的问题,我道歉,但我似乎无法向Google描述。在jQuery中,当这样的内容写成时它会被称为:
$.something({
//stuff goes here
});
例如在AJAX调用中:
$.ajax({
//url
//type
//data
//success
});
我知道普通语法通常是$(selector).action()
,但在这里,没有选择器。这是选择文件的某种简写吗?
答案 0 :(得分:5)
这只是jQuery对象中的一个松散函数,通常用于将它们应用于DOM元素没有意义的函数。
答案 1 :(得分:2)
jQuery中基本上有两种类型的函数:定义为jQuery prototype (也称为$.fn
)属性的函数,以及 jQuery上定义的函数 object - 实际上是一个函数 - 本身。 $.ajax
是后者的示例(以及$.post
,$.get
等。)
map
的差异非常明显:$.map,定义为like this ......
jQuery.extend({
//...
map: function( elems, callback, arg ) { ... }
}
...将任何集合作为其参数并返回一个数组。
jQuery.fn = jQuery.prototype = {
// ...
map: function( callback ) {
return this.pushStack( jQuery.map(this, function( elem, i ) {
return callback.call( elem, i, elem );
}));
},
}
...更具体,让jQuery对象映射为其上下文,并返回一个jQuery对象。
答案 2 :(得分:1)
在JavaScript中,{key: value}
是关联数组的语法。 fn()
是函数调用的语法。
因此模式$.foo({ key: value});
调用函数$.foo
,地图{key: value}
作为参数。函数foo
碰巧在jQuery名称空间中被细分。在JS(和其他函数式语言)中,函数是对象,可以有父元素,子元素,属性和方法,就像在OO语言中一样。
答案 3 :(得分:1)
文档将大部分内容放在Utilities section中。也许正因为如此,我看到它们被称为“jQuery [something]实用功能”。我们称之为jQuery对象的$().something
方法。