我已经定义了我的JavaScript函数,如下所示:
function printCompanyName(company1, company2, company3, company4, company5)
{
document.write("<p>" + company1 + "</p>");
document.write("<p>" + company2 + "</p>");
document.write("<p>" + company3 + "</p>");
document.write("<p>" + company4 + "</p>");
document.write("<p>" + company5 + "</p>");
}
并将其称为:
printCompanyName("Dell, Microsoft, Apple, Gizmodo, Amazon");
但我得到以下输出:
Dell, Microsoft, Apple, Gizmodo, Amazon
undefined
undefined
undefined
undefined
什么给了!?我一直在努力为小时解决这个问题。我想要:
Dell
Microsoft
Apple
Gizmodo
Amazon
答案 0 :(得分:3)
你传递的是一个恰好包含4个逗号的字符串
因此,第一个参数包含该单个字符串,其他4个未定义。 (Sisnce你只给了一个值)
由于Javascript参数是可选的,因此不会通过传递其他参数的值来获得错误。
你需要在它们之间用逗号传递5个不同的字符串,如下所示:
printCompanyName("Dell", "Microsoft", "Apple", "Gizmodo", "Amazon");
答案 1 :(得分:2)
您想致电:
printCompanyName("Dell", "Microsoft", "Apple", "Gizmodo", "Amazon");
你目前正在这样做,你正在通过一家公司“戴尔,微软,苹果,Gizmodo,亚马逊”。
答案 2 :(得分:1)
试试这个:
printCompanyName("Dell", "Microsoft", "Apple", "Gizmodo", "Amazon");
答案 3 :(得分:0)
其他信息:
使用函数将参数作为字符串逗号分隔的方法:
function printCompanyName(names)
{
// also check the type of names (you know "if it is a string object")
var data = names.split(',');
for(var i in data) {
document.write("<p>" + data[i].trim() + "</p>");
}
}
例如:printCompanyName("Dell, Microsoft, Apple, Gizmodo, Amazon");
否则使用内部参数var:
的多参数函数function printCompanyName()
{
for(var i in arguments) {
document.write("<p>" + arguments[i] + "</p>");
}
}
例如:printCompanyName('Dell', 'Microsoft', 'Apple', 'Gizmodo', 'Amazon');
就像SLaks说的那样。