【问题标题】:Javascript how to pass mutliple parameters [duplicate]Javascript如何传递多个参数[重复]
【发布时间】:2016-04-18 14:40:13
【问题描述】:

所以作为 C 用户,我真的很喜欢使用 printf。现在我正在做 js 应用程序,我不得不使用console.log()。您可以使用console.log("User %s has %d points", userName, userPoints);,但我想创建自己的函数来完成这项工作,因为我做了一些更改。所以我想创建一个带有多个参数的函数,并相应地打印出来。

我想做什么的例子

function(parm1,parm2,parm3...){
  //Stuff
}
console.log("number:%d text:%s"par1,par2);

【问题讨论】:

标签: javascript c function parameters console


【解决方案1】:

使用arguments object。像这样

function p(){
    for(var i = 0; i < arguments.length; ++i)
        console.log(arguments[i]);
}

p(1,2,3);

【讨论】:

  • 是的,这行得通。在下载之前,我会尝试将其变成我自己的 printf 语句。 github.com/alexei/sprintf.js
  • 如果浏览器最初支持它(例如 Google Chrome),为什么要这样做?
  • 但是,我想创建自己的 sprintf 方法,而不是使用其他人的代码。
  • @ssc-hrep3 我正在创建自己的函数。
【解决方案2】:

只需使用console.log() 的默认实现,因为它确实支持多个参数,就像在reference guide of the Mozilla Developer Networkreference guide of Google Chrome 中描述的那样。

您的示例也适用于 console.log(取自 official developer page of Google Chrome):

console.log("User %s has %d points", userName, userPoints);

【讨论】:

  • 是的,但我不能做这样的事情 console.log("number:%d text:%s"par1,par2);
  • 你可以。请参阅我的更新答案。
  • 太棒了。感谢 BLUEPIXY 也给出了一个很好的答案,我试图重新创建自己的 console.log 方法,但这种方法也可以。谢谢,我希望我能有两个答案。
【解决方案3】:

你可以使用类似的输出

console.log('param1 = ' + param1 = ' param2 = ' + param2);

在大多数浏览器中还有调试模式,您可以在其中使用断点。

【讨论】:

  • 是的,我知道我能做到。我不想那样做。我想像 printf, console.log("number:%d text:%s"par1,par2);
【解决方案4】:

控制台日志可以接受多个参数,所以你可以像这样使用:

    var a = function(parm1,parm2,parm3,param4,param5){
      console.log(parm1,parm2,parm3); 
    }
    
    a(1,2,3)

您可以运行 sn-ps 并在您的开发工具中查看。

【讨论】:

  • 对不起,我的意思是,我想创造一些我可以做到这一点的东西。 console.log("number:%d text:%s"par1,par2);
猜你喜欢
  • 1970-01-01
  • 2019-12-28
  • 2013-08-09
  • 1970-01-01
  • 2012-01-06
  • 1970-01-01
  • 2016-10-25
  • 1970-01-01
  • 2013-07-08
相关资源
最近更新 更多