Я попробовал ваш код, и он прекрасно работает:
http://jsfiddle.net/Jfq6d/
Вы должны проверить, что данные, которые вы получаете, действительно выглядят так, как вы ожидаете.Например, вы можете использовать вкладку Net в аддоне FireBug в Firefox, чтобы проверить ответ, который вы получаете при вызове AJAX.
Edit:
Поскольку вы хотите повторно использовать функцию,чтобы создать массив вне функции:
var arreglo = [];
function restults(data) {
if(data.length != 0) {
$.each(data, function(index, data) {
if (jQuery.inArray(data.id, arreglo) == -1) {
arreglo.push(data.id);
$("#envivo").append("<li>Titulo: " + data.titulo + " Link: " + data.link + " Fuente: " + data.fuente + "</li>");
}
});
}
}