Локальное хранилище позволяет клиентскому javascript сохранять состояние на локальном компьютере (если поддерживается LocalStorage). Это одна вещь, для которой на стороне клиента JavaScript может использовать куки, но куки также используются для других вещей, которые LocalStorage не может заменить.
Например, LocalStorage никогда не просматривается сервером, поэтому, если сервер хочет отслеживать состояние какого-либо клиента или отслеживать что-то на нескольких страницах домена, сервер не может использовать LocalStorage для этого и, вероятно, все еще использовать куки. Файлы cookie для домена отправляются на сервер с каждым запросом в этом домене (таким образом, обеспечивается возможность аутентификации входа на всех страницах сайта). Это то, что LocalStorage не может сделать.