繁体   English   中英

如何使用带有过滤器的字符串数组的 for 循环?

[英]How can I use for loop with array of string with filter?

我将字符串数组作为参数,我想对该数组中的每个字符串使用过滤器并返回匹配的结果。

  get moviesByCity() {
    return (id: string[]): MovieI[] | undefined => {
      console.log(id);
      for (let i = 0; i <= id.length; i++) {
        console.log(id.length);
        console.log(id[i]);
        console.log(i);
        return this.movies.filter((movie) => movie.city === id[i]);
      }
    };
  }

问题是我的'i'没有被迭代并且它保持'0'。 我在哪里做错了?

在此处输入图像描述

我以相同的顺序做了 console.log:'id.length'、'id[i]' 和 'i'

不确定您想要做什么,但这是我的近似值。

您在结构上搞砸了,以错误的方式使用功能。

有关 map、过滤器等功能的使用,请参阅文档

const moviesByCity = (id: string[]): MovieI[] | undefined => {
  console.log(id);
  return id.map((e,idx)=>{
    console.log(id[idx]);
    console.log(e);
    return movies.some((movie) => movie.city === e);
  })
};

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM