No quiero estos duplicados, ¿puedo arreglar mi código?
let caratteristiche = html.match(/<table width="100%">(.*?)<\/table>/mi); if (caratteristiche) { for (let el of caratteristiche) { let element = el.match(/<span class="OD_(red|blue)">(.*?)<\/span><\/td>/mig) if (element && element.length > 0) { // <span class="OD_blue">Climatizzazione</span></td> // <span class="OD_blue">Impianti Gas</span></td> for (let elem of element) { try { let item = elem.match(/<span class="OD_(red|blue)">(.*?)<\/span><\/td>/i); obj.caratteristiche.push(item[2]) } catch (e) { // } } } else { obj.caratteristiche = null } } }esta es mi caratteristiche :
Array(2) [<…an="2" class="OD_last_row_red">, <td class="OD_ba…td colspan="2" class="OD_last_row_red">, 1335, <img class="OD_img_omb…an= "2" clase="OD_last_row_red">, indefinido]
y este elemento que ciclo en él para raspar solo texto entre etiquetas html
Array(6) [Climatizzazione, Impianti Gas, Installazione Ganci traino, Navigatori Autoradio, Pre-revisioni, Consegna a domicilio]
Hay varias formas de eliminar duplicados en matrices.
let chars = ['A', 'B', 'A', 'C', 'B']; let uniqueChars = [...new Set(chars)];o
let uniqueChars = chars.filter((c, index) => { return chars.indexOf(c) === index; });