Per dirlo in modo più diretto:
Is it dangerous that the attacker knows all the JavaScript functions and all the CSS styles (effects) ?
No, non è intrinsecamente pericoloso per un utente malintenzionato di vedere JS e CSS. Dopotutto, l'attaccante o qualsiasi altro client deve essere in grado di vedere questi file in modo che l'applicazione funzioni affatto!
Il tuo compito è progettare la tua applicazione in modo che un utente malintenzionato che ha accesso completo al codice HTML, CSS e Javascript non sia ancora in grado di eseguire un attacco (sia che si tratti di un attacco al server o di un lato "sfruttare come falsificazione di richieste cross-site). Più facile a dirsi che a farsi, certo, ma questo è l'obiettivo.
In realtà, una buona sicurezza significherebbe progettare la tua app in modo che un utente malintenzionato abbia accesso completo (di sola lettura) a HTML, CSS, JS, gli script sul lato server, il codice sorgente del server Web, e la configurazione del sistema ancora non è stata in grado di eseguire un attacco. Gli aggressori possono, in generale, avere accesso a tutte queste cose. Ma in pratica, puoi prendere delle misure per nascondere la configurazione lato server e il codice sorgente, e rallenterà qualcuno che non è sufficientemente determinato. Non puoi nascondere HTML / CSS / JS e comunque aspettarti che l'applicazione web funzioni.