# JavaScript Base - Ricerca di un profilo

**URL:** <https://forum.freecodecamp.org/t/javascript-base-ricerca-di-un-profilo/653180>\
**Category:** General\
**Tags:** italiano\
**Created:** [November 29, 2023, 7:07am UTC](https://forum.freecodecamp.org/t/javascript-base-ricerca-di-un-profilo/653180 "2023-11-29T07:07:37Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![baronemanu109](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/baronemanu109/32/319911_2.png) [@baronemanu109](https://forum.freecodecamp.org/u/baronemanu109)\
**Post date:** [November 29, 2023, 7:07am UTC](https://forum.freecodecamp.org/t/javascript-base-ricerca-di-un-profilo/653180/1 "2023-11-29T07:07:37Z")

</div>

### Tell us what’s happening:

Descrivi qui il tuo problema in dettaglio.  
what is the problem in this code guys??

### Your code so far

```javascript
// Setup
const contacts = [
    {
      firstName: "Akira",
      lastName: "Laine",
      number: "0543236543",
      likes: ["Pizza", "Coding", "Brownie Points"],
    },
    {
      firstName: "Harry",
      lastName: "Potter",
      number: "0994372684",
      likes: ["Hogwarts", "Magic", "Hagrid"],
    },
    {
      firstName: "Sherlock",
      lastName: "Holmes",
      number: "0487345643",
      likes: ["Intriguing Cases", "Violin"],
    },
    {
      firstName: "Kristian",
      lastName: "Vos",
      number: "unknown",
      likes: ["JavaScript", "Gaming", "Foxes"],
    },
  ];
  
  function lookUpProfile(name, prop) {
    // Modifica il codice solo sotto questa riga
    for(let i =0; i<contacts.length;i++){
        if(contacts[i].firstName === name){
            if(contacts[i].hasOwnProperty(prop)){
                return contacts[i][prop];
            }else{
                return "No such property";
            }
        }else{
            return "No such contact"
        }
    }
  
    // Modifica il codice solo sopra questa riga
  }
  
  lookUpProfile("Akira", "likes");

```

### Your browser information:

Lo user agent è: `Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36`

### Challenge Information:

JavaScript Base - Ricerca di un profilo

> **[freeCodeCamp.org](https://www.freecodecamp.org/italian/learn/javascript-algorithms-and-data-structures/basic-javascript/profile-lookup)**
>
> Impara a programmare — Gratis

---

<div class="post-metadata">

**Author:** ![alevanni](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/alevanni/32/134247_2.png) [@alevanni](https://forum.freecodecamp.org/u/alevanni)\
**Post date:** [December 10, 2023, 5:49pm UTC](https://forum.freecodecamp.org/t/javascript-base-ricerca-di-un-profilo/653180/2 "2023-12-10T17:49:30Z")

</div>

Ciao @baronemanu109,

ho fatto solo un controllo veloce, quindi non ho trovato tutta la soluzione, ma solo una parte del problema.

Il `return "No such contact"` è fatto troppo presto. Dovrebbe essere fatto solo dopo aver finito di controllare tutto l’array, fuori dal ciclo for, mentre al momento è all’interno.  
Così com’è ora, il codice fa un ciclo, vede che il nome non corrisponde e interrompe tutto.

Consiglio: quando hai cicli non molto lunghi, fa comodo inserire dei `console.log(proprietà_da_controllare)` dentro i vari step per capire cosa sta succedendo. Se i cicli sono molto lunghi, ti conviene metterla solo nei punti salienti.

---

<div class="post-metadata">

**Author:** ![ILM](https://sea3.discourse-cdn.com/freecodecamp/user_avatar/forum.freecodecamp.org/ilm/32/363239_2.png) [@ILM](https://forum.freecodecamp.org/u/ILM)\
**Post date:** [January 7, 2025, 11:38am UTC](https://forum.freecodecamp.org/t/javascript-base-ricerca-di-un-profilo/653180/3 "2025-01-07T11:38:51Z")

</div>


