【发布时间】:2021-03-25 12:50:14
【问题描述】:
-
我有一个
array -
我正在尝试创建一个带有
two parameters的function,它将返回一个基于condition的string值或表达式,例如乐队成员加入和离开的年份
3.我正在尝试在 array 内以新手方式在不带任何循环的情况下运行此 function
const everyMember = ['Mike Portnoy', 'Charlie Dominici', 'John Petrucci', 'John Myung', 'Kelvin Moore', 'Derek Sherinian', 'James Labrie', 'Mike Manzini'];
const calcActiveYear = function(yearJoined,yearLeft){
if(calcActiveYear === ' '){
`Member still present since ${year}`;
}else{
return yearLeft - yearJoined;
}
// return yearLeft - yearJoined;
}
const activeYear = [
calcActiveYear(everyMember[0]),
calcActiveYear(everyMember[1]),
calcActiveYear(everyMember[2]),
calcActiveYear(everyMember[3]),
calcActiveYear(everyMember[4]),
calcActiveYear(everyMember[5]),
calcActiveYear(everyMember[6]),
calcActiveYear(everyMember[7]),
]
console.log(activeYear);
这是我期待的那种输出 -
const calcActiveYear = function(yearJoined,yearLeft){
return yearLeft- yearJoined;
}
const MIkePortnoy = calcActiveYear(1985,2010);
const CharlieDominici = calcActiveYear(1987,1990);
const JohnPetrucci = calcActiveYear();
const JohnMyung = calcActiveYear();
const KelvinMoore = calcActiveYear(1986,1994);
const DerekSherinian = calcActiveYear(1994,1999);
const JamesLabrie = calcActiveYear();
const mikeManzini = calcActiveYear();
console.log(MIkePortnoy,CharlieDominici,JohnPetrucci,JohnMyung, KelvinMoore, DerekSherinian, JamesLabrie)
请帮我看看你会怎么做,而不是在这里指出明显的错误。谢谢!
注意我正在尝试找出数组的局限性。没有对象、循环、原型。
【问题讨论】:
-
您将
calcActiveYear明确设置为一个函数;你怎么期望它变成一个字符串? -
请提供清晰的输入输出集。读者不清楚
-
在 calcActiveYear 定义中,它需要两个参数(yearJoined、yearLeft),而在 ActiveYear 数组中,您仅将成员名称作为单个参数传递。您能否详细说明您的输入和预期输出?
-
everyMember 是一个字符串列表,其中包含名称。现在您将其成员传递给 calcActiveYear,它是如何工作的?我相信everyMember 必须是带有{yearJoined, yearLeft} 的对象数组,这样才有意义。 calcActiveYear 需要以 {yearJoined, yearLeft} 作为输入
标签: javascript arrays function