Non riesco a vedere le tre dimensioni dell'array.

Da quanto mi pare di capire le dimensioni sono due: la successione dei programmi e per ogni programma i tre campi proposti.

Io imposterei la matrice cosi`:
codice:
var programmi = new Array()

for(var i=0; ;i++) {
  programmi[i] = new Array(3);
  programmi[i][0] = contenuto;
  programmi[i][1] = datainizio;
  programmi[i][2] = datafine;
}
Nota che in ogni ciclo serve disporre dei tre dati (argomento che non ho affrontato).

E poi che te ne fai della matrice una volta che la hai riempita? Come la invii al server?