😈╰•ALBERTO•╯😈 la cosa si può fare, se crei un unico ciclo while con inserimento alternato dei due array (inserisci_uno[], inserisci_due[]). Puoi riscrivere tutto in questo modo:
let array_uno = [];
let array_due = [];
let inserisci_uno = "";
let inserisci_due = "";
while (1) {
inserisci_uno = prompt("Numeri primo Array (scrivi 'stop' per fermarti):");
if (inserisci_uno === "stop") break;
array_uno.push(inserisci_uno);
inserisci_due = prompt("Numeri secondo Array (scrivi 'stop' per fermarti):");
if (inserisci_due === "stop") break;
array_due.push(inserisci_due);
}
let contatore = 0;
for (let i = 0; i < array_uno.length; i++) {
for (let j = 0; j < array_due.length; j++) {
if (array_uno[i] === array_due[j]) {
contatore++;
}
}
}
alert("Numeri nel primo array: " + array_uno.join(", "));
alert("Numeri nel secondo array: " + array_due.join(", "));
alert("Numeri in comune: " + contatore);
In questo caso quindi un while(1) e scrivi "stop" se vuoi terminare l'inserimento, diciamo che è un po' più elegante come scrittura. Oppure non inserisci la condizione (con il relativo break) e al posto di while(1) inserisci la condizione, che se è doppia semplicemente la gestisci tramite OR. Ovvero while(inserisci_uno != "stop" || inserisci_due != "stop")
(OR e non AND, altrimenti terminerebbe appena uno dei due è "stop" invece l'altro deve continuare). Un'ulteriore alternativa sarebbe, nel ciclo while, chiedere prima la scelta ("digita 1 se vuoi inserire l'array 1, digita 2 per l'array 2") e quindi poi il corrispondente.