Your first consideration should be javascript.
Javascript (among other paradigms) supports functional programming. ES6, in conjugation with libraries like Ramda, mori, deku etc. - is a compelling (and accessible) stack for web development with a very rich ecosystem.
In addition, clojure and clojurescript are good contenders and there is a good ecosystem growing around them. I have not used clojure(script) personally but given my basic familiarity with other variants of lisp (elisp) I can appreciate the power of its homoiconic syntax.
Next, I would recommend you to consider F#.
F# is a mature, open source, cross-platform, functional-first programming language. It empowers users and organizations to tackle complex computing problems with simple, maintainable and robust code.
I have been exploring F# over last few months and its powerful type system combined with type inference and clean python inspired indented syntax makes it an amazing language. Using F# in conjugation with javascript targets (like Fabel or Funscript) you can have your entire web stack in F#. While it is widely used in financial domain, it's ecosystem around web application is development is still evolving. However F# is built around interoperability and its functional first but imperative & OOP friendly nature allows you to benefit from the full .net ecosystem in your backend and javascript ecosystem in your frontend.
Suave is a good starting point for web programming in F#. It is a very approachable web framework and its documentation has plenty of examples that illustrate F#'s concise, readable and typesafe syntax. For example this is a web server that greets users with "Hello world":
open Suave
startWebServer defaultConfig (Successful.OK "Hello World!")
The third alternative you should consider is Elixir.
Elixir is a dynamic, functional language designed for building scalable and maintainable applications.
Elixir leverages the Erlang VM, known for running low-latency, distributed and fault-tolerant systems, while also being successfully used in web development and the embedded software domain.
While unlike F# it does not offer you a powerful type system (though third party solutions like dialyxir exist), it does provide you with Erlang OTP - a powerful ecosystem for concurrent and distributed computing. While Elixir ecosystem is great for backend, if you are looking for a language that provides you some of the similar elegant language level features like currying, pattern matching and pipe operator for left to right function composition you can consider pairing it with livescript.
Livescript is a functional language that provides with a syntax sugar over javascript (similar to coffeescript) and offers seamless interoperability with javascript libraries (zero code required for bridging or wrapping javascript libraries).
There are other alternatives like Elm (mostly the ecosystem is focussed on frontend and interoperability requires more effort) and Haskell+Purescript/Haste (Much less approachable and more focussed on purity than pragmatism) which you can explore.