【问题标题】:Javascript: can parameters be anything?Javascript:参数可以是任何东西吗?
【发布时间】:2019-09-25 07:27:42
【问题描述】:

我很难找到有关此的信息:Java 脚本参数可以是任何东西吗?例如,我知道一个函数参数可以是另一个函数。但也是 java 脚本代码的参数,可以是完全不同的代码的整个负载,有些代码你不会期望在那里看到,因为函数参数中没有列出其他代码。我试过查找这个,但是我发现的所有教程都只显示了一个函数或一个简单的 java 脚本语句具有参数和参数以及更多细节的基础知识,谁能更好地向我解释这一点,并希望提供更好的链接?例如,当在下面的 java 脚本中使用时,css 转换 3d 有许多预期参数,如下所述:https://www.w3schools.com/jsref/prop_style_transform.asp 但是在下面的代码中,a + currentAngle + 变量也被分叉到代码中,但是当正式定义了 transform 3d 参数时,没有人说您也可以滑入变量。你显然可以做到这一点,但我正试图准确地找出它的规则,这样我在编写代码时就可以知道。

var currentAngle = 0;
var currentDirection = 0; // 0 - Increasing, 1 - Decreasing

function spin() {
document.getElementById("myDIV");
setInterval(function() {
if(currentDirection == 0) {
  // Allow one complete rotation.
  if(currentAngle < 360) {
    myDIV.style.transform = "rotate3d(0,1,0.2,"+ currentAngle +"deg)";
    currentAngle += 10;
  } else {
    // Change the direction.
    currentDirection = 1;
    currentAngle -= 10;
    myDIV.style.transform = "rotate3d(0,1,0.2,"+ currentAngle +"deg)";
  }

【问题讨论】:

  • 将你的复杂代码包装在一个函数中,并将其作为参数传递???
  • 你的问题很不清楚。您是在问参数是否可以是某些函数而不是其他函数?
  • 请在您的问题中添加一个示例;听起来您确实在谈论回调,其中将整个匿名函数作为参数传递。这是异步操作的常见做法。
  • @emma46,顺便说一句,欢迎来到 StackOverflow。正如其他人所评论的那样,如果您清楚地解释您要解决的问题或您无法理解的具体代码,这可能会有所帮助。
  • 任何 JS 值都可以作为参数传递给函数。表示值的代码的 sn-p 在 JS 中称为“表达式”(与表示“做某事”的指令的代码相反,称为“语句”)。因此,从语法上讲,您可以将任何计算结果为函数的表达式 &lt;f&gt; 应用到任何计算结果为 &lt;f&gt;(&lt;x&gt;) 的表达式 &lt;x&gt;

标签: javascript function parameters arguments


【解决方案1】:

参数可以是任何类型的值。

代码是创建程序的东西,通常不是程序中的值。

定义函数调用的源代码可以包含任何类型的表达式,该表达式在预期参数的位置计算为值。

【讨论】:

  • 我已经更新了这个问题,希望能澄清我的问题,Quentin 和 Asad,到目前为止,你们是最接近理解和回答我的问题的人,非常感谢。
  • 你混淆了 CSS 和 JS。在 JS 中,字符串只是字符串。在 CSS 中,值不涉及任何函数。
  • 不,我知道它是 CSS,但它在带有附加变量的 Javascript 中使用。我需要用javascript找到一个更好的例子,但想象我的例子都是javascript,我问过关于+ currentAngle +的相同问题
  • @emma46 — 然后我请你回到这个答案的最后一段。
  • @emma46 上面的评论毫无意义,developer.mozilla.org/en-US/docs/Web/JavaScript
猜你喜欢
  • 1970-01-01
  • 2011-08-04
  • 1970-01-01
  • 1970-01-01
  • 2016-09-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-08
相关资源
最近更新 更多