Javascript 实现函数并返回新列表js
我只学了三个星期的javascript,在一项任务上需要帮助 我想实现一个名为test的函数,它将列表和函数作为参数。测试函数应该为列表中的每个值调用一次作为参数提交的函数,将有问题的列表值作为参数,并将返回一个仅包含列表值的新列表其参数函数返回true。我想在不使用filter()方法的情况下实现这一点 我怎么能在这里思考?我下面的代码是一个好的开始吗?我很感激能在这里得到的帮助,这样我才能理解这一点Javascript 实现函数并返回新列表js,javascript,Javascript,我只学了三个星期的javascript,在一项任务上需要帮助 我想实现一个名为test的函数,它将列表和函数作为参数。测试函数应该为列表中的每个值调用一次作为参数提交的函数,将有问题的列表值作为参数,并将返回一个仅包含列表值的新列表其参数函数返回true。我想在不使用filter()方法的情况下实现这一点 我怎么能在这里思考?我下面的代码是一个好的开始吗?我很感激能在这里得到的帮助,这样我才能理解这一点 let x = ["1", "2", "3"]; function test(x, s
let x = ["1", "2", "3"];
function test(x, s) {
for (let i = 0; i < x.length; i++) {
}
return
}
设x=[“1”、“2”、“3”];
功能测试(x,s){
for(设i=0;i
您可以在函数开始时创建一个空数组,在返回数组之前读取数组时填充该数组
由于您不想使用过滤器
,我将使用forEach
提供一个解决方案,另一个使用basicfor
循环
设x=[“1”、“2”、“3”];
函数testFor(列表,testFct){
常量结果数组=[];
for(设i=0;i{
if(testFct(元素)){
结果推(元素);
}
})
返回结果数组;
}
log(testFor(x,(el)=>el%2));
log(testForeach(x,(el)=>el%2))代码>您提供的代码是一个良好的开端,它提供了一种遍历列表中所有元素的方法,这是一个良好的起点。不过,我建议您更改参数的名称,以便更好地表示它们所持有的数据
下一步是为列表中的每个元素调用作为参数(f
)传入的函数,并检查它是否返回true。如果有,则可以将此元素添加到新列表(其中包含要返回的值列表)
循环完成后,可以返回此新列表。请看下面的一个示例,了解如何实现此功能:
设x=[1,2,3,4];
功能测试(lst,f){
让新列表=[];
for(设i=0;i 控制台日志(结果)代码>如果你想用一种简单的方式来做,这是-->
设x=[“1”、“2”、“3”];
函数myFunction(元素){
如果(元素==“1”| |元素==“2”){
返回真值
}
返回错误
}
功能测试(列表,myFunction){
让newList=[];
for(设i=0;i
使用过滤器还有另一种更简单的方法
出于好奇,您为什么不想使用过滤器
?向我们展示您期望的输出“map”呢?还是“forEach”?或者目标是在没有任何数组函数的情况下完成它?等等,这是一个任务或某种测试,你让我们在你的位置解决?是的,他的目标是在没有数组函数的情况下完成。最好合并两个答案。
let x = ["1", "2", "3"];
function myFunction(element){
if (element == "1" || element == "2"){
return true
}
return false
}
function test(list, myFunction) {
let newList = [];
for (let i = 0; i < list.length; i++) {
let element = list[i];
if (myFunction(element)){
newList.push(element);
}
}
return newList
}
test(x, myFunction)
let x = ["1", "2", "3"];
function myFunction(element){
if (element == "1" || element == "2"){
return true
}
return false
}
function test(list, myFunction) {
return list.filter(myFunction)
}
test(x, myFunction)