Javascript condizione con operatore ternario non funzionante

Bynary01

Utente Silver
3 Ottobre 2016
57
32
0
73
salve ragazzi sto utilizzando l'operatore di confronto ternario di javascript per verificare se un dato Nodo fa parte dei children di un altro ma il confronto ritorna sempre il valore false qualcuno può aiutare?

Codice:
async function getDescriptionNode(key){

    let response = await fetch(`https://openlibrary.org${key}.json`);

    let json = await response.json();

    let description = document.createElement('p')

    description.textContent = json.description

    return description



}



searchBtn.onclick = async () => {

    let subject = searchField.value;

    const json = await getBooks(subject);

    booksUl.innerHTML = mapToList(json)

    let booksLi = [...booksUl.children]

    booksLi.forEach(item => {

        item.onclick = async () => {

            let description = await getDescriptionNode(item.id)

            item.contains(description)

                ? item.removeChild(description)

                : item.appendChild(description)

        }

    })

}

in poche parole se all'interno dell'elemento <li> che ho cliccato è presente il paragrafo con la descrizione voglio rimuoverlo, se non è presente voglio aggiungerlo ma il codice continua ad aggiungere testo al blocco ogni volta che clicco

PS se qualcuno avesse consigli su come migliorare la pulizia del codice e della seconda funzione in particolare sono ben accetti consigli grazie