Yes, it has a few dictionaries to check against (including the top 100k passwords). It is pretty quick to check, though my library is Java, so not really intended for client side (when talking about a web application). It detects all of those additional things (dates, alphabetical sequences, spacial sequences, etc), so it can accurately apply an estimated entropy value to it... But it does not exclude anyone from using any of those within their password.
It calculates an estimated entropy (and has utility functions to convert to time to crack) and gives users feedback on how to make their passwords more secure. It has an optional method you can use to enforce a minimum entropy... But again that's optional.
I think it's the best compromise between security and usability, but I may be biased .