0

我有一个由 Flowplayer 创建并通过 javascript 可用的变量。如果我将变量直接写入页面,它只会返回“对象对象”,所以我假设这是一个数组。如果我不知道数组中任何对象的名称,如何解析出其中的数据?

我知道我在这里遗漏了一些非常基本的东西,但我认为我不必从不知道它包含什么的数组中获取数据。

笔记:

  • 我想要做的是将 onCuePoint 字幕数据嵌入到 RTMP 视频流中
  • .valueOf() 返回相同的东西
  • 这是我正在使用的返回“对象对象”的代码:

streamCallbacks: ['onFI'],
clip:

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

谢谢

4

2 回答 2

3

如果您要问的是如何迭代数组的内容,则可以使用普通的 javascript 来执行此操作,如下所示:

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]);
}

仅仅因为某些东西是 Object 类型并不一定意味着它是一个数组。它也可能只是一个具有各种属性的普通对象。如果您在info调试器或 with 中查看参数console.log(info),您应该能够看到它是什么。

于 2013-06-19T18:28:36.083 回答
2

您需要遍历您的数组并一一获取结果,将您的 onFI 函数替换为:

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;
}
于 2013-06-19T18:29:30.697 回答