Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    il valore numerico più alto in un array

    bon jours mon amis, commant ça vais... miii che francese

    ho un' arrei che fa:

    varList = new Array(var_fk, var_couch, var_sweat, var_dehydrate);

    C'è tra i metodi uno che mi individua il valore più alto (se parliamo di numeri)
    Sto spulciando il metodo sort() ... :master:

    così ho il valore della var che mi interessa
    codice:
    varList.sort();
    	trace(varList);
    	popped = varList.pop();
    	trace(popped);
    ma a me serve sapere solo il nome della var maggiore
    se Mano lava Mano... Gina lava Gina

    ScrollbarsPainter05 per colorare le scrollbar

    Metaphysique - this stuff rocks!!!

  2. #2
    Utente di HTML.it L'avatar di negatyve
    Registrato dal
    Feb 2001
    Messaggi
    9,479
    Il nome o il suo indice?

    varList.length - 1

  3. #3
    Ciao negative
    per esempio, se var_fk è la var con il valore numerico maggiore, a me non sorve il valore ma serve appunto "var_fk"...

    PS
    nello script precedente ho usato pop() perchè mi ricorda i duran duran :adhone:
    se Mano lava Mano... Gina lava Gina

    ScrollbarsPainter05 per colorare le scrollbar

    Metaphysique - this stuff rocks!!!

  4. #4
    se non c'è un metodo vero e proprio, per 4 var lo faccio con "if(){}"
    oppure se il mio caso è da manuale... leggerò il manuale
    se Mano lava Mano... Gina lava Gina

    ScrollbarsPainter05 per colorare le scrollbar

    Metaphysique - this stuff rocks!!!

  5. #5
    Utente di HTML.it L'avatar di negatyve
    Registrato dal
    Feb 2001
    Messaggi
    9,479


    il modo di referenziare un valore in un array è tramite l'indice, quindi non hai da recuperare il nome di una variabile, ma il suo indice, che è appunto varList.length - 1

  6. #6
    perdonami...
    ma con listaVar.length-1; ottengo (se nell'array ci sono 4 elementi) il numero 3

    forse devo usare indexOF(); anche se non credo sia lo strumento giusto

    oppure devo creare un array nuovo nel quale ordino gli elementi per valore, trovo quello più alto e con un ciclo controllo nell'array originale a quale corrisponde il valore in questione?

    Così funzionerebbe, ma se c'è lo script di una riga che mi da questo valore, dipingerebbe sul mio volto un generoso sorriso

    altrimenti va bene lo stesso
    se Mano lava Mano... Gina lava Gina

    ScrollbarsPainter05 per colorare le scrollbar

    Metaphysique - this stuff rocks!!!

  7. #7
    Utente di HTML.it L'avatar di negatyve
    Registrato dal
    Feb 2001
    Messaggi
    9,479
    Da 3 perchè 3 è l'indice dell'ultimo elemento dell'array:

    codice:
    varList = [3, 5, 1, 7, 2];
    varList.sort();
    indice_maggiore = varList.length - 1;
    trace(varList[indice_maggiore]);

  8. #8
    il risultato dovrebbe essere questo
    Con un problema non indifferente:
    sort() considera 10 minore di 2


    //valori arbitrari
    var var_fk = 10, var_couch = 5, var_sweat = 4, var_dehydrate = 3;
    //----------------------------------
    varList = new Array(var_fk, var_couch, var_sweat, var_dehydrate);
    varName = new Array("var_fk", "var_couch", "var_sweat", "var_dehydrate");
    sortedList = new Array(var_fk, var_couch, var_sweat, var_dehydrate);
    sortedList.sort();
    higher = sortedList.pop();
    trace(varList);
    trace(sortedList);
    trace("higher:"+higher);
    for (i=0; i<varList.length; i++) {
    if (varList[i] == higher) {
    trace("questo si:"+varList[i]+" !!!!!! m i s e r v e s o l o q u e s t a c o s a : "+varName[i]);
    } else {
    trace("questo no!:"+varList[i]);
    }
    }
    se Mano lava Mano... Gina lava Gina

    ScrollbarsPainter05 per colorare le scrollbar

    Metaphysique - this stuff rocks!!!

  9. #9
    Utente di HTML.it L'avatar di negatyve
    Registrato dal
    Feb 2001
    Messaggi
    9,479
    Guarda che stai facendo un giro assolutamente inutile. Nell'array ci sono i valori, non serve che ci siano i nomi delle variabili. Se vuoi i nomi delle variabili, devi riempire l'array con una serie di oggetti contenenti due proprietà, uno "nome" (ad esempio), e una "valore". Quello che devi fare tu è riassunto qui:

    codice:
    //valori arbitrari 
    var var_fk = 10, var_couch = 5, var_sweat = 4, var_dehydrate = 3;
    varList = new Array(var_fk, var_couch, var_sweat, var_dehydrate);
    sortedList = new Array(var_fk, var_couch, var_sweat, var_dehydrate);
    order = function(a, b)
    {
    	return Number(a) > Number(b);
    }
    sortedList.sort(order);
    trace(sortedList);
    trace("higher:" + sortedList[sortedList.length - 1]);

  10. #10
    order = function(a, b)
    {
    return Number(a) > Number(b);
    }

    ecco il nodo gordiano!!!
    ora ci lavoro un pò sopra

    Intanto li avevo ordinati così
    varList = new Array(var_fk, var_couch, var_sweat, var_dehydrate);
    higher = varList[0];
    for (i=0; i<varList.length; i++) {
    if (varList[i]<varList[i+1]) {
    higher = varList[i+1];
    }
    }
    trace(higher);

    Ora mi metto all'opera
    Ciao e 1000 grazie
    se Mano lava Mano... Gina lava Gina

    ScrollbarsPainter05 per colorare le scrollbar

    Metaphysique - this stuff rocks!!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.