如何解决使用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 parameters或arguments
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 举报,一经查实,本站将立刻删除。