Many moons ago I learned PHP with a Visual Quickstart Guide and I thought about getting the VQG JS book too, but it came out quite badly in Amazon reviews, hence I opted for Flannagan's effort.
While it's weighty, it has a lot of examples in and has a consistent emphasis on providing reusable blocks of utility code - good for applications. So for example he provides a good event registration tool which deals with all the tough event issues such as cross-browser differences and propagation. There are similar utility examples for other topics including HTTP (Ajax), DOM scripting and more.
I've not used any other JS books so someone else will have to chip in with other recommendations.