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

    Come posso assegnare questo array?

    Ciao, io ho un problema con una dichiarazione di un Array JS.

    Vorrei fare in modo che l'arrei diventi dinamico e quindi se dal server ricevo 3 dati sia di lunghezza 3, se ne ricevo 5 di lunghezza 5.

    L'array dichiarato come sono abituato a fare quindi var nome=new Array(valore, valore) , non mi causa problemi.

    Il fatto è che questo array è dichiarato in questo modo:

    var myData = new Array( [ 'Firefox', parseFloat(valori[0]) ] , ['IE6', parseFloat(valori[1]) ] , [ 'IE7', parseFloat(valori[2]) ] , [ 'Opera', parseFloat(valori[3]) ] ,[ 'Safari', parseFloat(valori[4]) ] );
    innanzitutto ha delle parentesi quadrate e quella virgola in mezzo.

    Non mi sembra un array multidimensionale.

    Scusate la mia ignoranza, ma così imparo, qualcuno mi spiega cosa è e soprattutto come posso concatenare valori (con un ciclo o .concat) in modo da mantenere quella sintassi.

    La sinstassi devo mantenerla perchè questo è l'input dei grafici creati con la libreria JSCharts.


    Grazie mille Davide

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    un array si puo' anche definire cosi'
    var myData = []
    quindi quello e' un array multidimensionale

    in myData[1]['IE6'] ritroveresti questo valori[1]

    il resto della domanda non la capisco,
    cosa hai in partenza?
    comunque sia, ora che hai chiarito che e' un array di array dovresti poter procedere da solo

    ciao

  3. #3
    Grazie dell'aiuto, non sto a decifrare la mia seconda domanda perchè prima provo a risolvermi il problema da solo (ora che mi sn un pò chiarito).

    Caso mai, riscriverò qui.


    Grazie ancora

  4. #4
    Non tardo a rifarmi sentire allora:

    nella prima assegnazione quindi:

    var myData = new Array(['Firefox', 1]);
    il risultato è quello che voglio:

    alert(myData[1]);
    Visualizza: Firefox,1
    Invece quando all'array myData aggiungo un altro elemento quindi:

    myData=myData.concat(['Ie6', 3]);
    alert(myData[1]);
    Visualizza: Firefox,1

    alert(myData[2]);
    Visualizza: Ie6
    Io vorrei fare la giusta assegnazione quindi se faccio alert(myData[2]); visualizzi Ie6,3


    Spero di essere stato un pò più chiaro

  5. #5
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    myData=myData.concat(['Ie6', 3]);
    quello che ottieni e' un array ora lungo 3
    0 -> array con firefox,1
    1 -> IE6
    2 -> 3
    in pratica ora come ora non stai concatenando un array che a sua volta contiene un array, ma solo un array


    myData=myData.concat([['IE6',3]])

  6. #6
    Ottimo, Grazie di nuovo!

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.