По поводу годов (один из вариантов - собирать id-шники по году в массив):
var rootArray = [
[1, '2008-07-17'],
[2, '2008-07-17'],
[3, '2007-07-17']
];
var yearProj = {};
var year;
for (var k = 0; k < rootArray.length; k++) {
year = rootArray[k][1].substr(0, 4);
// алтернативная запись - if (..) {...}
!yearProj[year] && (yearProj[year] = []);
// собираем в массив
yearProj[year].push(rootArray[k][0]);
}
// проверка
for (var k in yearProj) {
alert(yearProj[k]);
// чтобы получить строку из массива,
// можно применить join(',')
alert('Строка: ' + yearProj[k].join(','))
}
По поводу букв можно проверить
регулярными выражениями (только проверять коды букв, т.к. у вас русские буквы используются).