微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用javascript在函数中传递多个参数的更简单方法

如何解决使用javascript在函数中传递多个参数的更简单方法

这是一个JavaScript函数,可确定参数是否为字符串

好奇是否有人可以简化此功能? 我忍不住想起了,因为参数有很多相似之处

typeof x ===“ string”

有一种方法可以简化它。我问我的老师,他们告诉我他们什么都不知道。

function isstring(string1,string2,string3) {
        if (typeof x === "string" && typeof y === "string" && typeof z === "string")
        console.log("Yes!" + x + " " + y + " " + z)
        else {
          console.log("nope!")
        }
      }

      isstring("String1","String2","String3")

我真的很希望阅读您的回复

谢谢 -乔

解决方法

您可能正在寻找rest parametersarguments object来处理任意数量的参数,并对其进行循环(或为此使用a helper method):

function areStrings(...args) {
    if (args.every(x => typeof x === "string"))
        return "Yes!" + args.join(" ");
    else
        return "Nope!";
}

console.log(areStrings("String1","String2","String3"));
console.log(areStrings(5,"someString"));
,

您可以将参数作为数组o接收,并使用功能参数进行检查:

function isString(...strings) {
  if (strings.every(s => typeof s === 'string'))
     console.log("They are string")
  else
     console.log("They are not string")
}
,

如果要检查多个变量是否为字符串,可以使用此功能:

function isString(...args){
  for(var i = 0; i<args.length; i++){
    if(typeof args[i] !== 'string'){
      return false;
    }
  }
  return true;
}

您可以传递任意数量的参数,并且仅当所有参数均为字符串时,结果才为true。

示例:

  • isString(4)返回false
  • isString("Hello World")返回true
  • isString("I am a string",3,true,"Hello")返回false
  • isString("Hello World","Welcome")返回true

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。