jQuery/javascript参数处理问题
首先,我不知道如何表达“标题”这个问题,如果我把大家都搞糊涂了,很抱歉 无论如何,我在jQuery上看到了这段代码 或者换句话说,在什么样的情况下,我们将在基于示例的参数“methods[method]”中传递jQuery/javascript参数处理问题,javascript,jquery,Javascript,Jquery,首先,我不知道如何表达“标题”这个问题,如果我把大家都搞糊涂了,很抱歉 无论如何,我在jQuery上看到了这段代码 或者换句话说,在什么样的情况下,我们将在基于示例的参数“methods[method]”中传递 谢谢 您在开头看到,代码定义了一个对象methods 函数$.fn.tooltip=function(method)接受名为method的参数(末尾没有s) 该函数将执行方法中定义的方法之一,但它只能执行该方法,前提是该方法也可用。因此,if(methods[method]) 如果方法是
谢谢 您在开头看到,代码定义了一个对象
methods
函数$.fn.tooltip=function(method)
接受名为method
的参数(末尾没有s)
该函数将执行方法
中定义的方法之一,但它只能执行该方法,前提是该方法也可用。因此,if(methods[method])
如果方法
是例如显示
、隐藏
、更新
等,即如果方法
对象具有包含在方法
中的名称的属性,则表达式将是真
因此,对于foo
或bar
,表达式将为false
。如果If
语句不存在,代码将尝试调用方法['foo']
,该方法不存在,您将得到一个错误:
TypeError:对象不是函数
这就是您想要知道的吗?您在开始时看到代码定义了一个对象
方法
函数$.fn.tooltip=function(method)
接受名为method
的参数(末尾没有s)
该函数将执行方法
中定义的方法之一,但它只能执行该方法,前提是该方法也可用。因此,if(methods[method])
如果方法
是例如显示
、隐藏
、更新
等,即如果方法
对象具有包含在方法
中的名称的属性,则表达式将是真
因此,对于foo
或bar
,表达式将为false
。如果If
语句不存在,代码将尝试调用方法['foo']
,该方法不存在,您将得到一个错误:
TypeError:对象不是函数
这就是您想要知道的吗?if语句将检查您是否试图调用插件可用的方法之一。在您的示例中,您有以下方法:
init, destroy, reposition, show, hide, and update
因此,您可以执行以下操作:
$.tooltip('init', { arg1: true, arg2: 'a value' });
然后,您的代码知道将参数发送到何处,因为此if语句将为true:
if(methods['init'])
if语句将检查您是否试图调用插件可用的方法之一。在您的示例中,您有以下方法:
init, destroy, reposition, show, hide, and update
因此,您可以执行以下操作:
$.tooltip('init', { arg1: true, arg2: 'a value' });
然后,您的代码知道将参数发送到何处,因为此if语句将为true:
if(methods['init'])
您的代码片段不完整,并且没有演示如何调用,因此很难给出明确的答案
但是,以下是我对代码的看法:
if语句是必需的,因为将使用init、destroy、show、hide、update等参数调用tooltip函数,这些参数引用在方法散列中定义的函数。您可能会通过init调用tooltip来初始化工具提示、通过hide隐藏工具提示、通过show显示工具提示等。如果根本不传递参数,则默认为init方法并初始化工具提示(If的第二个分支) 您的代码片段不完整,并且没有演示如何调用,因此很难给出明确的答案
但是,以下是我对代码的看法:
if语句是必需的,因为将使用init、destroy、show、hide、update等参数调用tooltip函数,这些参数引用在方法散列中定义的函数。您可能会通过init调用tooltip来初始化工具提示、通过hide隐藏工具提示、通过show显示工具提示等。如果根本不传递参数,则默认为init方法并初始化工具提示(If的第二个分支) 首先,这段代码声明了一个名为methods
的hashmap,其中包含一些函数
然后,第二部分声明一个名为tooltip
的函数,该函数接受一个名为method
的参数。此参数是我们要调用的函数的名称,此名称是方法
数组中此函数的索引
因此,当您执行$('#随便什么')。工具提示('destroy')
它将在方法
数组中查找用销毁
键引用的函数。首先,这段代码声明了一个名为方法
的hashmap,其中包含一些函数
然后,第二部分声明一个名为tooltip
的函数,该函数接受一个名为method
的参数。此参数是我们要调用的函数的名称,此名称是方法
数组中此函数的索引
因此,当您执行$('#随便什么')。工具提示('destroy')
它将在方法
数组中查找销毁
键引用的函数。谢谢大家!所有的答案在某种程度上都很有帮助,我感谢大家的及时回复^^谢谢大家!所有的答案在某种程度上都是有帮助的,我感谢大家的及时回复^^