Javascript 什么是;(\&&x27;&&x27;&&x2B;元素&&x2B;&&x27;&&x27;);什么意思? 函数展开(元素){ var target=document.getElementById(元素); var h=目标。远视; var sh=目标高度; var loopTimer=setTimeout(\''+element+'\''),10); if(h
示例中的代码是一个递归调用。它是一个计时器,回调是Javascript 什么是;(\&&x27;&&x27;&&x2B;元素&&x2B;&&x27;&&x27;);什么意思? 函数展开(元素){ var target=document.getElementById(元素); var h=目标。远视; var sh=目标高度; var loopTimer=setTimeout(\''+element+'\''),10); if(h,javascript,expression,Javascript,Expression,示例中的代码是一个递归调用。它是一个计时器,回调是expand(element)。理解这一点,您可以很容易地理解var loopTimer=setTimeout(\'''+element+'\''),10);意味着对expand(element)的另一个调用。然而,函数expand需要一个字符串参数,所以\'+'element+'\\'就是这样。最后,如果element这里等于scaleid,我们最终得到expand('scaleid'),这显然是对expand()的另一个调用。因为它是字符串,
expand(element)
。理解这一点,您可以很容易地理解var loopTimer=setTimeout(\'''+element+'\''),10);
意味着对expand(element)的另一个调用
。然而,函数expand
需要一个字符串参数,所以\'+'element+'\\'
就是这样。最后,如果element
这里等于scaleid
,我们最终得到expand('scaleid')
,这显然是对expand()的另一个调用
。因为它是字符串,所以需要对它进行转义。在您的示例中,代码是递归调用。它是一个计时器,回调是expand(element)
。理解这一点,您可以很容易理解var loopTimer=setTimeout(\'+element+'\'),10);
意味着另一个对expand的调用(element)
。然而,函数expand
需要一个字符串参数,所以\''+element+'\\'
就是这样。最后,如果element
这里等于scaleid
,我们最终得到expand('scaleid')
,这显然是对expand()的另一个调用
。因为它是字符串,所以需要对它进行转义。\'
是'
的转义字符,所以它要做的是构建一个可以作为函数使用的字符串,它包含一个参数,并用单引号括起来
function expand(element) {
var target = document.getElementById(element);
var h = target.offsetHeight;
var sh = target.scrollHeight;
var loopTimer = setTimeout('expand(\'' + element + '\')', 10);
if (h < sh) {
h += 1;
} else {
clearTimeout(loopTimer);
alert("伸縮完成");
}
target.style.height = h + "px"
}
上面的部分“打开”字符串,将展开(
作为一个文本,然后是一个转义的“
,然后是一个”
,以关闭该部分字符串。因此,返回值为:
'expand(\''
接下来,它们连接元素变量的值:
expand('
该字符串现在包含:
'expand(\'' + element
下一步是打开另一个文字字符串,添加另一个单引号(转义),后跟右括号:
expand('elementVariableValue
评估结果如下:
'\')'
把这些放在一起,你会得到:
')
(最终解释为超时的函数)
现在,使用JavaScript,您可以同时使用“
和”
作为字符串分隔符,因此可能更容易:
expand('elementVariableValue')
\'
是'
的转义字符,因此它所做的是构建一个可以作为函数使用的字符串,该字符串包含一个参数,该参数用单引号括起来
function expand(element) {
var target = document.getElementById(element);
var h = target.offsetHeight;
var sh = target.scrollHeight;
var loopTimer = setTimeout('expand(\'' + element + '\')', 10);
if (h < sh) {
h += 1;
} else {
clearTimeout(loopTimer);
alert("伸縮完成");
}
target.style.height = h + "px"
}
上面的部分“打开”字符串,将展开(
作为一个文本,然后是一个转义的“
,然后是一个”
,以关闭该部分字符串。因此,返回值为:
'expand(\''
接下来,它们连接元素变量的值:
expand('
该字符串现在包含:
'expand(\'' + element
下一步是打开另一个文字字符串,添加另一个单引号(转义),后跟右括号:
expand('elementVariableValue
评估结果如下:
'\')'
把这些放在一起,你会得到:
')
(最终解释为超时的函数)
现在,使用JavaScript,您可以同时使用“
和”
作为字符串分隔符,因此可能更容易:
expand('elementVariableValue')
在Javascript中,可以将字符串作为函数的第一个参数传递,该字符串的计算方式与使用eval()类似。该代码类似于每10毫秒调用函数expand(“something”)。在Javascript中,可以将字符串作为函数的第一个参数传递,该字符串的计算方式与使用eval()类似.该代码类似于调用函数expand(“something”)每10毫秒一次。这会告诉他函数的一般功能,但根据问题的标题,似乎很明显他对特定语法特别感兴趣。酷,我会注意我的答案,似乎很难简单地通过不精确的答案来回答并获得否决票。这告诉他有趣的是什么一般来说,他是这样做的,但从问题的标题来看,很明显他对具体的语法很感兴趣。很酷,我会注意我的答案,似乎很难简单地通过一个不精确的答案来回答并获得否决票。