【问题标题】:Why can't I run the codes?为什么我不能运行代码?
【发布时间】:2018-06-10 01:39:59
【问题描述】:

我写的

function factorial(n) {
    if (n === 0) {
        return 1;
    }
    return n * factorial(n - 1); 
}

console.log(factorial(3));

代码是计算阶乘。

但我在 jsfiddle 中编写了代码并运行,没有任何反应。 我写的html喜欢

<script>
   function factorial(n) {
           ・
       ・
  console.log(factorial(3));
</script>

在 GoogleChrome 中浏览时,console 中什么也没有显示。我想在 console.log.6 中看到 6 是由 1*2*3 计算得出的。我的代码有什么问题?我应该如何解决这个问题?

【问题讨论】:

标签: javascript jsfiddle


【解决方案1】:

它为我运行。尝试将您的脚本标签放入&lt;body&gt;

<html>
  <head><title>Does it run?</title></head>
<body>
  <h1>Test</h1>

  <script>
  function factorial(n) {
    if (n === 0) {
      return 1;
    }
    return n * factorial(n - 1); 
  }
  console.log(factorial(3));
  </script>

</body>
</html>

【讨论】:

    【解决方案2】:

    您的代码没问题,但 jsfiddle 默认不显示控制台输出。

    您可以通过单击左侧并添加诸如https://getfirebug.com/firebug-lite-debug.js 之类的资源来解决此问题,然后运行您的代码,您应该会看到控制台输出。

    参考这个问题 --> Print Var in JsFiddle

    【讨论】:

    • 编辑:这可能是重复的。发帖人问他/她的代码是否有问题。我解释说问题出在界面上,并显示了一个问题的链接,该问题解释了如何启用他/她正在寻找的功能。
    • @JaromandaX 从字面上看,您实际上是正确的,但是,就个人而言,您似乎在试图冒犯他人。我编辑了我的答案以更好地帮助 OP。
    • @JaromandaX 我支持你们的 cmets 在不要求澄清或在帖子中指出问题的情况下试图冒犯。
    • @JaromandaX 您删除了之前的两个 cmets,因为它们令人反感。现在,你到底想完成什么? stackoverflow 因对新用户怀有敌意而享有盛誉,这是有原因的。让我们尝试成为解决方案的一部分,而不是问题。
    • 这样说 - 你编辑了你的错误以回应我的评论 - 很明显我的评论是正确的 - 但是如果你看看“接受”的答案,很难说 OP遇到了问题 - 我相信他们将脚本放在带有脚本标签的 jsfiddle 的脚本框中!!
    【解决方案3】:

    对于 jsFiddle,一种相当有效的方法是创建一个输出 div 和一个日志函数

    一个简单的方法是

    HTML

    <div id="output"><div>
    

    CSS

    #output{ white-space: pre-line;}
    

    JavaScript

    let output = document.querySelector("#output"),
    log = (t) => output.textContent += t + "\r\n";
    

    【讨论】:

      猜你喜欢
      • 2021-10-18
      • 2021-05-05
      • 2010-10-14
      • 2015-03-05
      • 1970-01-01
      • 1970-01-01
      • 2021-04-21
      • 2017-05-13
      • 2019-10-27
      相关资源
      最近更新 更多