Come funziona in javascript l'accesso alle variabili dell'array

flavio fachin

Nuovo Utente
3 Gen 2018
6
0
1
45
Sto cercando di capire meglio come funzione il motore javascript per eseguire l’accesso allínterno delle variabili di un array.


Le variabili di js non sono tipizzate, ma se ho capito bene, con il metodo sort() si può aggiungere un indice per avere un accesso ordinato all’array.


Ora, se le variabili fossero tipizzate, quando si venisse ad aggiungere nel codice:” arr[12]”, il motore per trovare l’indirizzo invocato, essenzialmente farebbe il calcolo: “indirizzo array + (numero di bit del dato * 12); invece su di un array non tipizzato ma ordinato con il metodo sort, il motore (utilizzando il principio precedentemente esposto, presumo e spero) troverebbe il dodicesimo elemento dell’indice, utilizzando poi questo come indirizzo per reperire il dato ricercato.


Ho fatto in BenchMark la seguente prova:


Inizializzazione test:

Codice:
        var arr=[];

        for (var i=0;i<1000;++i){

            arr=i;

        }

        arr.sort();


        var ran=[];

        for (var i=0;i<1000;++i){

            ran=1;

        }




loop 1:

        for (var i=1;i<998;i+=2){

            ran+=ran[i-1];

        }



loop 2:


        for (var i=1;i<998;i+=2){

            arr[ran]+=arr[ran[i-1]];

        }
Il precedente test somma due numeri: la prima volta contenuti sequenzialmente in un array; la seconda il posizioni discontinue, il risultato è che il primo loop impiega solamente il 3% di tempo rispetto il primo!


Il risultato mi lascia sospettare che il motore js, invece, reperisca i dati goffamente, confrontando tutti i valori delle chiavi rispetto la richiesta presentata nel codice, anche quando i dati sono numerici e ordinati!


In sostanza: 1)come è la storia al di là delle mie ipotesi e, ancora, 2) esiste per caso nelle librerie js un qualche oggetto array tipizzato?
 
Ultima modifica di un moderatore:

Max 1

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
29 Feb 2012
4.395
338
83
Ciao Caro Flavio purtroppo ti devo ricordare che da regolamento del forum, come tutti noi sei tenuto ad usare il tag
code.gif
quando posti del codice, oppure la funzione codice dalla barra degli strumenti
box inserisci 2.png.JPG

Inoltre ti prego di leggere attentamente il regolamento generale del forum e quello di sezione dove posti
Grazie
Il codice te lo sistemo io ma mi raccomando per il futuro
 
Discussioni simili
Autore Titolo Forum Risposte Data
F [Javascript] comando innerHTML non funziona Javascript 5
max1974 [Javascript] Grafico ajax non funziona Javascript 0
Koboshi [Javascript] Carico sul server e non funziona più. Javascript 4
paloppa [Javascript] Mindate non funziona Javascript 0
T [Javascript] Google maps con puntatore animato funziona solo in locale Javascript 1
ken_korn [Javascript][Risolto] browser.tab.Tabs.favIconUrl non funziona Javascript 5
simona71 Javascript non funziona più Javascript 1
gandalf1959 [Javascript] document.getElementById non funziona come mi aspetto Javascript 4
F Javascript che funziona solo nella home page e non nelle altre pagine Javascript 1
A Javascript non funziona correttamente su smartphone Javascript 2
gandalf1959 Richiamare un javascript da php. Non funziona? PHP 2
C Problema form javascript che non funziona Javascript 4
S javascript confirm NON funziona Javascript 1
G collegare funziona javascript da html Javascript 3
J Non funziona javascript Ajax 6
R INSERT INTO tabella non funziona Classic ASP 1
F Script java elenco alfabetico non funziona Javascript 3
R Select concatenata che non funziona la seconda volta Ajax 3
S Come funziona un estrattore di emails automatico? Posta Elettronica 1
A funzione iconv () non mi funziona PHP 4
D Alias AS non funziona più con DATE_FORMAT? MySQL 2
M Richiamare una singola funziona da file php PHP 2
Alex_70 Button non funziona nella form PHP 2
Tommy03 Order by non funziona MySQL 6
D FPDF non funziona PHP 3
M Richiamare funziona da file esterno jQuery 0
M Guestbook - non funziona dopo upgrade di PHP PHP 5
T script jquery non funziona più dopo il passaggio a MVC jQuery 5
Max 1 [PHP] Script che funziona in locale e non online PHP 16
gandalf1959 [PHP] Inserimento di più righe non funziona come mi aspetto... PHP 2
felino [Windows 8.1] Windows Update non funziona correttamente Windows e Software 3
M [HTML] Picture Tag non funziona in header-Element HTML e CSS 0
A Libero mail non funziona Posta Elettronica 1
mferri Collegamento con xampp non funziona più da cambio di operatore. Web Server 2
L [HTML] Caricato sito sul server, ma non funziona con tutti i browser HTML e CSS 2
L Caricato sito sul server, ma non funziona con tutti i browser Presentati al Forum 1
I PHPMailer non funziona PHP 13
H [Photoshop] Filtro Nik Dfine non funziona. Photoshop 1
K Ipcam 4g e smartphone 4g non funziona IP Cam e Videosorveglianza 4
M [RISOLTO]Windows media player non mi funziona più su win 10 pro 64 bit Windows e Software 2
Federico.Marcelo Cos’è un bot di Instagram e come funziona? Social Media Marketing 0
F [MS Access] VBA non funziona più MS Access 2
A [Photoshop] Tavoletta grafica Huion non funziona con PS CS6 Photoshop 2
V Creare tabella mysql con php non funziona PHP 1
Koboshi [HTML] Line-height non funziona ç_ç HTML e CSS 3
V [PHP] Perché non funziona ? PHP 1
I [CSS] Galleria immagini non funziona HTML e CSS 12
I Url rewrite con .htaccess funziona ma poi mostra indirizzo "reale" nella barra di navigazione Apache 1
G [PHP] ini_set() non funziona PHP 4
X [PHP] campi obbligatori multiupload non funziona PHP 6

Discussioni simili