a occhio direi che l'interprete js se la prende a male quando incontra questo assegnamento
arrAree[0][1][1] = "Difesa e Spazio";

poichè prima di questa istruzione dovresti specificare
arrAree[0][1] = [];

stessa cosa anche qui
arrAree[0][1][1][1] = "Algoritmi (calcolo della copertura radar ...";

prima devi specificare che l'elemento precedente è un array
arrAree[0][1][1] = [];

e in generale dovunque aumenti la profondità dell'array senza prima dichiarare come array l'elemento che vuoi estendere.

in realtà l'deale sarebbe stata una struttura object literal del tipo

codice:
var aree = {
   'funzionale' : {
       'difesa spazio' : [
            'algoritmi',
            'applicazioni gis',
            ...
       ]
   },

   'gestionale' : {

   },

    ...

}