2014-12-06 32 views
1

我正在做代码大战的一些JavaScript练习。我想通过打印到控制台来查看程序中发生了什么问题,但除了测试结果之外,输出窗口中不显示任何内容。有人知道如何在代码大战中打印到控制台吗?我在他们的文档中找不到任何东西。控制台输出不会出现在代码大战

function areYouPlayingBanjo(name) { 
    // Implement me 
    var person = name.split(''); 
    person[0].toLowerCase(); 
    console.log(person[0]); 
    if(person[0] === 'r'){ 
    return name + " plays banjo"; 
    } 
    else{ 
    return name + " does not play banjo"; 
    } 
} 
+0

没有代码没有人可以帮你 – 2014-12-06 05:52:58

+0

正在传递'name'的值是什么? – 2014-12-06 05:56:07

+1

Rikke,rikke和Martin,但他们都打印名称+“不弹奏班卓琴”我只想知道如何在代码大战中打印到控制台,因为console.log没有这样做 – user137717 2014-12-06 05:58:54

回答

2

看到这个问题:http://www.codewars.com/users/Elistan/comments https://codewars.com/users/isbadawi/replies

从编码看第一家店下层案值点再比较:你需要做这样的事情:

function areYouPlayingBanjo(name) { 
     // Implement me 
     var person = name.split(''); 
     console.log(person); 
    var x= person[0].toLowerCase(); 
     console.log(person[0],x);// see difference here 
     if(x === 'r'){// if you will use person[0] it will not match from given input because it will be R 
     return name + " plays banjo"; 
     } 
     else{ 
     return name + " does not play banjo"; 
     } 
    } 

var out = areYouPlayingBanjo('Rikke, rikke and Martin'); 
    console.log(out); 
+0

将人[0]保存到x解决了这个问题,但是仍然没有打印到控制台,你能解释一下与人[0]和与x相比是?我查看了你提供的链接,所以也许console.log在这里被禁用了。如果他们告诉你在kata里,那将是非常好的。 – user137717 2014-12-06 07:06:32

+0

如果你将和person [0]比较,它会是R因为person [0] .toLowerCase()不修改原始内容,它只是创建一个副本。 – 2014-12-06 07:10:39

+0

如何将person [0] .toLowerCase()放入if语句或正在执行person [0] = person [0] .toLowerCase ()?是否会修改原始文件?我只是自己尝试并将其打印出来,但是我没有设置可以运行各个JavaScript片段的环境。您能否推荐一个? – user137717 2014-12-06 16:51:27

0

这并不是问题的答案,而是更多的扩展答案,以便记录一个可以在代码中允许在控制台中进行调试的扩展。

安装这个Chrome扩展: https://github.com/bojan88/Codewars-JavaScript-debugger

这可以让你使用debugger;语句来迫使你的代码在浏览器而不是codewars服务器上的沙盒环境中运行。很棒。

警告:我不知道这是否安全。使用风险自负。