Javascript jQuery-这个语法是什么意思?

Javascript jQuery-这个语法是什么意思?,javascript,jquery,Javascript,Jquery,我正在看jquery.ui-1.8.11.js: $.extend(Datepicker.prototype, { /* Class name added to elements to indicate already configured with a date picker. */ markerClassName: 'hasDatepicker', /* Debug logging (if enabled). */ log: function () {

我正在看jquery.ui-1.8.11.js:

$.extend(Datepicker.prototype, {
    /* Class name added to elements to indicate already configured with a date picker. */
    markerClassName: 'hasDatepicker',

    /* Debug logging (if enabled). */
    log: function () {
        if (this.debug)
            console.log.apply('', arguments);
    },

什么是
log:function()
语法?它叫什么?如何使用它?

调用
$.extend
的第二个参数是一个对象。它们是使用大括号
{}
和take
键:值对定义的。该值可以是一个函数,这是
日志发生的情况

这类似于以下内容:

var myObject = {
  prop1: 'some value',
  prop2: 'some other value',
  method1: function () {
    // some code here.
  }
}

以后可以调用
myObject.method1()
来执行函数中的任何代码。

调用
$的第二个参数。extend
调用是一个对象。它们是使用大括号
{}
和take
键:值对定义的。该值可以是一个函数,这是
日志发生的情况

这类似于以下内容:

var myObject = {
  prop1: 'some value',
  prop2: 'some other value',
  method1: function () {
    // some code here.
  }
}

以后可以调用
myObject.method1()
来执行函数中的任何代码。

它正在扩展
日期选择器.prototype
对象上的对象属性

例如,在运行该语句后,可以执行以下操作:

 alert(new Datepicker().markerClassName); // alert('hasDatepicker');

 // OR

 new Datepicker().log(); // calls the function
基本上,
$.extend()
允许您使用附加属性修改对象(或覆盖它们)。考虑下面的对象:

 var obj = { Text: 'Hello World' };

 alert(obj.Text); // Hello World

 $.extend(obj, {
     Text: 'Something Else',
     func: function() { alert('Stuff'); }
 });

 alert(obj.Text); // Something Else
 obj.func();

它正在扩展
Datepicker.prototype
对象上的对象属性

例如,在运行该语句后,可以执行以下操作:

 alert(new Datepicker().markerClassName); // alert('hasDatepicker');

 // OR

 new Datepicker().log(); // calls the function
基本上,
$.extend()
允许您使用附加属性修改对象(或覆盖它们)。考虑下面的对象:

 var obj = { Text: 'Hello World' };

 alert(obj.Text); // Hello World

 $.extend(obj, {
     Text: 'Something Else',
     func: function() { alert('Stuff'); }
 });

 alert(obj.Text); // Something Else
 obj.func();

此语法使用JavaScript原型来扩展Datepicker对象并添加其他属性和函数。这将添加Datepicker.log作为函数和Datepicker.markerClassName。

此语法使用JavaScript原型来扩展Datepicker对象并添加其他属性和函数。这将Datepicker.log作为函数和Datepicker.markerClassName添加。

第二个参数(以开头的大括号
{
开始,以结尾的大括号
}
结束)是
$.extend()
调用的对象文本。一般来说,它是用
新对象
显式创建对象的缩写。这大致相当于:

var foo = new Object;
foo.bar = 'bar';

还值得注意的是,函数的分配方式,它们是作为对象属性值分配的匿名函数。例如:

var foo = new Object;
foo.method1 = function() { ... };
也可以使用命名函数:

function fn1() { ...}
foo.method2 = fn1;
或:

或:

在JavaScript中,还有其他用于速记的文字,例如数组文字:

var arr = ['members', 'are', 'separated', 'by', 'commas'];
和RegExp文本(请注意,解析RegExp文本与将字符串传递给
new RegExp()
)的转义规则不同):

$.extend()
调用的第二个参数(以开头的大括号
{
开始,以结尾的大括号
}
结束)是一个对象文本。一般来说,它是用
新对象
显式创建对象的缩写。这大致相当于:

var foo = new Object;
foo.bar = 'bar';

还值得注意的是,函数的分配方式,它们是作为对象属性值分配的匿名函数。例如:

var foo = new Object;
foo.method1 = function() { ... };
也可以使用命名函数:

function fn1() { ...}
foo.method2 = fn1;
或:

或:

在JavaScript中,还有其他用于速记的文字,例如数组文字:

var arr = ['members', 'are', 'separated', 'by', 'commas'];
和RegExp文本(请注意,解析RegExp文本与将字符串传递给
new RegExp()
)的转义规则不同):


这只是为正在指定的新原型提供的一个选项。最有可能用于处理新对象上的日志事件。“如果需要记录某些内容,请在启用调试时调用此函数”这只是为指定的新原型提供的一个选项。最有可能用于处理新对象上的日志事件。如果需要记录某些内容,请在启用调试的情况下调用此函数