【问题标题】:Why doesn't JSFiddle output results for this code为什么 JSFiddle 不输出此代码的结果
【发布时间】:2013-10-25 10:42:59
【问题描述】:

我一直在使用 Firebug javascript 控制台来测试短脚本。有几个人建议改用 JSFiddle。问题是我似乎无法弄清楚如何做到这一点。我在 js 面板中输入我的代码并点击运行,但没有任何反应。我假设应该输出结果?我尝试了不同的设置,阅读了 JSFiddle 文档,阅读了 Stackoverflow 上发布的其他问题,但我无法弄清楚。似乎它应该如此简单。也许只有当我从 HTML 调用它时它才有效? http://jsfiddle.net/nngrey/QgxCn/(我必须包含我的代码才能引用 JSFiddle 的链接。)

function Palindrome(str) {
    str = str.split("");
    for (var i = 0; i < str.length; i++) {
        if (str[i] === " ") {
            str.splice(i, 1);
        }
    }
    revStr = str.reverse().join("");
    str = str.join("");
    if (revStr === str) {
        return true;
    } else {
        return false;
    }
    return str;
}

str = "dont nod";
Palindrome(str);

【问题讨论】:

  • 警报(回文(str));或 console.log(Palindrome(str));
  • 你必须对返回值做某事。否则它只是丢失了。 “结果”面板仅显示您放入 HTML 面板的 HTML。
  • 谢谢。警报有效,但 console.log 似乎无效。
  • @Nathan console.log 将向 Web 控制台输出一条消息。要查看它,您应该先打开控制面板。

标签: javascript jsfiddle


【解决方案1】:

您可以使用这个 jsFiddle 通过 console.log 输出内容。与 alert() 的想法相同,但没有弹出窗口,您必须关闭。感谢Wayne Koort

http://jsfiddle.net/TEHLb/

var consoleLine = "<p class=\"console-line\"></p>";
console = {
    log: function (text) {
        $("#console-log").append($(consoleLine).html(text));
    }
};
var myVar = "foo";
console.log('Your variable has the value ' + myVar);

【讨论】:

  • 谢谢,开始使用这个(= forked it)。
【解决方案2】:

没有任何 html 来显示您的答案,您可以提醒它查看结果。

function Palindrome(str) {
  str = str.split("");
  for (var i = 0; i < str.length; i++) {
    if (str[i] === " ") {
        str.splice(i, 1);
    }
}
revStr = str.reverse().join("");
str = str.join("");
if (revStr === str) {
    return true;
} else {
    return false;
}
    return str;
}

str = "dont nod";
alert(Palindrome(str));

【讨论】:

  • 此外,您的return str; 将永远不会因为之前的return false;return true; 而被退回。该函数一旦返回即停止运行,即它只返回一次结果。
  • 谢谢!您了解 Firebug 的 Javascript 控制台、Chrome 的 Javascript 控制台和 JSFiddle 的界面之间的区别吗?也就是说,当我在 Firebug 控制台的右侧键入时,我会收到各种反馈。 Chrome 和 JSFiddle 并没有那么多。我觉得我没有正确使用这两个。一定还有更多我想念的。
  • 查看这个问题stackoverflow.com/questions/14328963/…,如果我打开你的小提琴然后在Chrome java 脚本控制台中我将&lt;top frame&gt; 更改为result(fiddle.jshell.net/),如果你更改@987654329,则在左上角@ 到No Wrap - in &lt;body&gt; 然后您可以重新运行小提琴,您可以访问控制台中的函数和变量console.log(Palindrome(str)); 工作。这似乎是 JSFiddle 独有的,尽管我在本地开发中从控制台访问变量从来没有遇到过问题。
【解决方案3】:

你需要alert(Palindrome(str));

试试这个demo

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-01-25
    • 2020-08-23
    • 2017-01-03
    • 1970-01-01
    • 2016-09-16
    • 2019-11-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多