Il "#" ti consente di scegliere come target qualcosa in una pagina web. come in
...
<div id="foo"></div>
...
per scegliere come target foo div in una pagina puoi semplicemente fare #foo
Detto questo, non è necessario ricaricare la pagina se si modifica il # nell'URL e Facebook lo utilizza come un hack . Quello che fanno è semplicemente cambiare l'hash 'che rende l'url bookmarkable' nello stesso momento in cui può caricare risorse usando XHR e la pagina non si ricarica da sola dall'altra parte non ha fatto richieste HTTP al server per i file CSS / HTML / JS (nonostante sia stato memorizzato nella cache, è necessaria la convalida) e quindi riduce la quantità di contenuto che devono rendere e il numero di richieste HTTP al loro server, possono anche aumentare le prestazioni e ridurre la latenza del sito Web facendo così.
Esiste comunque un modo migliore per farlo, documentato nell'API della cronologia HTML 5 (che forse dovresti leggere) che ti consente di modificare l'URL nella barra degli indirizzi in base agli stati della cronologia pushing
.