Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <html>
- <head>
- <title>ARRAY 01</title>
- </head>
- <body>
- <script type="text/javascript">
- //un array è un elenco ordinato (nel senso che gli elementi
- //occupano posizioni definite)
- //tre sintassi alternative per crearli
- //array vuoti
- let vuoto1 = new Array();
- let vuoto2 = Array();
- let vuoto3 = [];
- let v1 = Array(100); //100 elementi pre allocati
- let v2 = Array('100'); //1 elemento stringa
- let v3 = new Array(31,8,2017);
- let v4 = [5]; //un elemento === 5, senza sorprese
- let arr2 = Array(31, "Agosto", 2017);
- let arr3 = [31, 8, 2017]; //secondo me la più chiara
- // stampaArray(arr2);
- // stampaArray(arr3);
- arr2.push("ciao"); //aggiunge "ciao" in fondo all'array
- writeln(arr2, true); //true=stampa riga di trattini -------------
- arr2.pop(); //elimina l'ultimo elemento
- writeln(arr2, true);
- arr2[3]="ciao"; //stesso effetto di push (in questa situazione)
- writeln(arr2, true);
- arr2[arr2.length] = "hello"; //sempre in fondo
- writeln(arr2, true);
- arr2[20] = "hello"; //sempre in fondo
- writeln(arr2, true);
- arr2.length = 40;
- writeln(arr2, true);
- arr2.length = 10;
- writeln(arr2, true);
- let primo = arr2.shift();
- writeln(arr2, true);
- writeln(primo);
- let eliminati = arr2.splice(1,3);
- //arr2.splice(1); elimina tutti gli elementi a partire dalla posizione 1
- writeln(arr2, true);
- writeln(eliminati);
- //elimimina il secondo elemento ed aggiungine altri
- //a partire dalla posizione del primo eliminato
- eliminati.splice(1,1,"aggiunto1", "aggiunto2");
- writeln(eliminati);
- //elimina aggiunto2
- let posTrovato = eliminati.indexOf("aggiunto2");
- if ( posTrovato>-1 )
- { eliminati.splice(posTrovato, 1);}
- else
- {writeln("elemento non trovato");}
- writeln(eliminati);
- //casuali è un array di 30 numeri inter casuali
- let casuali = [];
- for(let i=0; i<30; i++)
- { casuali.push( Math.floor( Math.random()*100) ) ;}
- //calcola il resto della divisione per 7 dei numeri casuali
- //e crea con questi un nuovo array
- let resti = casuali.map( (elemento,indice, a) => elemento%7 );
- writeln(casuali);
- writeln(resti);
- resti.fill(0,0,10);
- writeln(resti);
- let diversiDaZero = resti.filter( elemento => elemento!==0 );
- writeln(diversiDaZero);
- if ( diversiDaZero.some( elemento => elemento>4 ) )
- {writeln("Trovato almento un resto maggiore di zero");}
- let quanti = diversiDaZero.reduce( (conta, elemento) => elemento>4 ? conta + 1 : conta);
- let totale = diversiDaZero.reduce( (somma, elemento) => somma+elemento);
- writeln(quanti);
- writeln(totale);
- arr3 = arr2.concat(resti);
- if ( diversiDaZero.every( elemento => elemento>4 ) )
- {writeln("tutti maggiori di 4");}
- let stringa = arr3.join();
- writeln(stringa);
- writeln(arr3.reverse());
- arr3.unshift(10);
- writeln(arr3.sort());
- // alert(arr3.indexOf('Agosto')!=-1 );
- // alert(arr3.includes('Agosto'));
- arr3 = [10, 30, ["Alluminio", 3400, ["Valori soglia", 1200, 4500]]];
- console.log(arr3.flat(2));
- // arr3 = ["fcamuso", "javascript", "c++"];
- // console.log(arr3.map((elemento) => [elemento, elemento.length]));
- // console.log(arr3.flatMap((elemento) => [elemento, elemento.length]));
- function writeln(messaggio, cornicetta=false)
- {
- document.write(messaggio+"<br>");
- if (cornicetta)
- writeln("-".repeat(40));
- }
- function stampaArray(arr)
- {
- //un parametro, la soluzione migliore per quello che dobbiamo fare
- arr.forEach( function(elemento) { writeln( elemento ); } );
- //due parametri; +indice
- //arr.forEach( function(elemento, indice) { writeln( indice + ":" + arr[indice] ); } );
- //tre parametri; +indice +array stesso
- //arr.forEach( function(elemento, indice, a) { writeln( indice + ":" + a[indice] ); } );
- }
- </script>
- </body>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement