Создайте массив из двух массивов
Я работаю с Google Feed API для RSS-каналов, и мне нужно добавить значения массива элементов RSS-канала для создания другого массива (который используется для создания гистограммы данных JavaScript).
Массив будет таким:
arrayOfData = new Array(
[THE_FEED_ITEM_CONTENT, THE_FEED_ITEM_TITLE,'#cccccc']
);
Я использую jqBarGraph для графа.
Для контекста это часть кода, которая отображает канал и впоследствии получает те значения, которые мне нужны для создания упомянутого массива. В настоящее время это часть создания таблицы данных, поступающих через канал:
function displayfeed(result){
if (!result.error){
var thefeeds=result.feed.entries
for (var i=0; i<thefeeds.length; i++) {
xlabel+="<td>" + thefeeds[i].title + "</td>";
xdata+="<td>" + thefeeds[i].content + "</td>";
}
rssoutput+=xlabel + "</tr></thead>" + xdata + "</tr></tbody></table>"
feedcontainer.innerHTML=rssoutput
}
else
alert("Error fetching feeds!")
}
window.onload=function(){
rssfeedsetup()
}
Вот пример массива, используемого для создания графиков JavaScript (с абсолютными значениями):
arrayOfData = new Array(
[10.3,'Jan','#cccccc'],
[15.2,'Feb','#cccccc'],
[13.1,'Mar','#cccccc'],
);
Теперь мне нужно, чтобы этот массив был заполнен:
arrayOfData = new Array(
[thefeeds[i].content, thefeeds[i].title,'#cccccc']
);
Идея, конечно, состоит в том, чтобы заполнить массив выше каждым элементом в ленте RSS. Одна строка заполнена thefeeds[i].content & [thefeeds[i].title и так далее, и так далее.
Заранее благодарю за любой совет.
2 ответа
var thefeeds=result.feed.entries;
var arrayOfData = new Array();
for (var i=0; i<thefeeds.length; i++) {
arrayOfData.push([thefeeds[i].content,thefeeds[i].title,'#cccccc'])
}
Цикл по массиву. Это не объединение, как это обычно определяется (сделано с Array.concat
в JavaScript)
var arrayOfData = new Array();
for(var feed in thefeeds) {
arrayOfData.push(feed.content, feed.title, '#cccccc');
}