2013-06-19 3 views
0

J'ai une variable créée par Flowplayer et disponible via javascript. Si j'écris la variable directement sur la page, elle renvoie simplement 'object Object', donc je suppose que c'est un tableau. Si je ne connais pas les noms des objets dans le tableau, comment puis-je analyser les données à l'intérieur?Comment retourner tous les objets dans un tableau javascript

Je sais qu'il me manque quelque chose de vraiment fondamental ici, mais je ne pense pas avoir jamais eu à obtenir des données d'un tableau ne sachant pas ce qu'il contient.

Notes:

  • Ce que je suis en train de faire est d'obtenir les données de sous-onCuePoint intégrées dans un flux vidéo RTMP
  • .valueOf() retourne la même chose
  • Voici le code I je utilise que le rendement de l'objet Object ':

streamCallbacks: ['onFI'],
clip:

{ 
    live:true,   
    provider: 'rtmp', 
    autoPlay: true, 
    url:'test1', 
    onFI:function(clip, info) 
    { 
     document.getElementById("onFI").innerHTML += "Data: " + info; 
    } 
} 

Merci

Répondre

1

Vous devez parcourir votre tableau et obtenir les résultats un par un, remplacer votre fonction ONFI avec ceci:

onFI:function(clip, info) 
{ 
    var data = ""; 

    // For each value in the array 
    for (var i = 0; i < info.length; i++) 
    { 
     // Add it to the data string (each record will be separated by a space) 
     data += info[i] + ' '; 
    } 

    document.getElementById("onFI").innerHTML += "Data: " + data; 
} 
+1

'données. = Info [i];' ce n'est pas PHP ... –

+0

Droit, je l'ai corrigé. –

+1

La dernière ligne ajoute juste un espace à la fin de la chaîne de données (qui sera sans espace entre les éléments). –

2

Si ce que vous demandez comment vous itérer sur le contenu d'un tableau, vous pouvez le faire en javascript plaine comme ceci:

var arr = [1,2,3]; 

for (var i = 0; i < arr.length; i++) { 
    // arr[i] is each item of the array 
    console.log(arr[i]); 
} 

Tout simplement parce que quelque chose est de type objet ne pas nécessairement signifie que c'est un tableau. Il pourrait aussi s'agir d'un objet simple avec diverses propriétés. Si vous regardez l'argument info dans le débogueur ou avec console.log(info), vous devriez être en mesure de voir ce que c'est.

+0

Si la variable d'information n'est pas un tableau, son contenu peut être affiché avec: 'var str = ''; pour (var p dans info) {str + = p + '=' + info [p] + '
'; } document.getElementById ("onFI"). innerHTML + = "Données:" + str; 'mais mieux vaut voir avec' console.log (info) 'comme le suggère le copain. (Firefox Ctrl + Maj + k ou Chrome Ctrl + j) – Stano

+0

Merci! Marqué l'autre comme la réponse b/c il semblait qu'il avait besoin de plus de points rep, mais cela a également aidé. @Stano merci pour votre addition - il a été très utile – BartFurglar

Questions connexes