Olá Hugo,
Uma das principais razões é a segurança. Se queremos acessar um banco de dados, precisamos dos dados de acesso deste banco, como o endereço, login e senha do mesmo.
Como os scripts Javascript são executado pelo navegador, conseguimos facilmente através do Dev Tools do Chrome inspecionar o código deste script e descobrir os dados de acesso do banco dados, caso essa informação ficasse com o cliente, afinal quando acessamos uma página na Web recebemos todos os arquivos HTML, CSS e JS necessários para que o navegador carregue-a.
E mesmo se dessemos um jeito de obfuscar os dados de acesso ao banco, nada impede alguém de alterar o código Javascript que busca os usuários da sua aplicação para um código que delete todos os seus clientes.
Em resumo, o código Javascript roda no cliente (no caso da Web, servidores como o NodeJs é outra história), e como cada uma das pessoas que acessa o seu Website tem acesso a esse código fonte, as informações sensíveis nele ficam expostas, podendo ser roubadas ou alteradas.
Espero que tenha ficado claro :)
Abraços,
Douglas Quintanilha