That said, even with what I'm actively tracking, mostly JavaScript heavy web applications, Node/iojs, ES6/ES2015, ES7/ESNext, BabelJS, React, Riot, Mercury, Angular, etc.; It's a lot to keep up with. Everything gets to be pretty significant very quickly. That doesn't even include advances in .Net (ASP.Net/MVC, core-clr, etc), Java, Python, Go, the list goes on. It's impossible to know every tool. But it is possible to know and understand the concepts behind web applications, which aren't changing quite as quickly. I understand how SPDY/HTTP2/WebSockets and even bits of WebRTC work. If you understand how the pieces fit together, and how to bend them to your will...
If you understand how web applications work, you might be an expert.
If you aren't afraid to look at and consider new tools, you might be an expert.
If you know when to be pragmatic about your software design, you might be an expert.
If you don't loosely apply a software design pattern because it kind of fits, you might be an expert.
There's no absolute, it's just a matter of knowing more than most, and being able to apply it in practice.