• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

58
Views
Filtrado de datos mecanografiados en una matriz anidada basada en otra matriz

Soy nuevo en TS Tengo una matriz de datos que se ve así

 const AllJobs = [ { title: Teller, salary: ["Hourly"], industries: [ "Accounting", "Banking", "Data" ] }, { title: Scientist, salary: ["Yearly"], industries: [ "Biology", "Chemicals", "Science" ] }, { title: Artist, salary: ["Hourly"], industries: [ "Design", "Paint", "Color" ] }, ]; let desiredSkills = ["Design","Accounting","Data"];

Quiero recorrer los datos en las "industrias" en la matriz AllJobs y verificar si alguno de esos valores coincide con alguno de los valores en las Habilidades deseadas. Si no hay valores coincidentes, filtre ese objeto. No sé si estoy haciendo esto bien en absoluto.

Resultados deseados:

 const AllJobs = [ { title: Teller, salary: ["Hourly"], industries: [ "Accounting", "Banking", "Data" ] }, { title: Artist, salary: ["Hourly"], industries: [ "Design", "Paint", "Color" ] }, ];

Aquí está mi código anterior. Eso actualmente no está funcionando.

 const getSuggested = (item: string) => { const filterIndustry = this.allJobs.filter((x:any) => x['industries'].every((y: string | any[])=> y.includes(item))); }; this.desiredIndustries.forEach(getSuggested);

yo tambien he probado

 const getSuggested = (item: string) => { let k = item; const data = this.allJobs.filter((item: { industries: any }) => item.industries == k); console.log(data); }; this.desiredIndustries.forEach(getSuggested);
almost 3 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Realmente no necesita TypeScript aquí, así que aquí hay una solución JS para usted:

 const AllJobs = [{ title: 'Teller', salary: ['Hourly'], industries: ['Accounting', 'Banking', 'Data'], }, { title: 'Scientist', salary: ['Yearly'], industries: ['Biology', 'Chemicals', 'Science'], }, { title: 'Artist', salary: ['Hourly'], industries: ['Design', 'Paint', 'Color'], }, ]; let desiredSkills = ['Design', 'Accounting', 'Data']; const result = AllJobs.filter(({ industries }) => industries.find((industry) => desiredSkills.includes(industry))); console.log(result);

Debería ser fácil de traducir a TS. ¡Espero eso ayude!

almost 3 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error