JavaScript is a scripting language that enables you to enhance static web applications by providing dynamic, personalized, and interactive content. This improves the experience of visitors to your site and makes it more likely that they will visit again. You must have seen the flashy drop-down menus, moving text, and changing content that are now widespread on web sites—they are enabled through JavaScript. Supported by all the major browsers, JavaScript is the language of choice on the Web. It can even be used outside web applications—to automate administrative tasks, for example. This book aims to teach you all you need to know to start experimenting with what it is, how it works, and what you can do with it. Starting from the basic syntax, you'll move on to learn how to create powerful web applications. Don't worry if you've never programmed before—this book will teach you all you need to know, step by step. You'll find that JavaScript can be a great introduction to the world of with the knowledge and understanding that you'll gain from this book, you'll be able to move on to learn newer and more advanced technologies in the world of computing. In order to get the most out of this book, you'll need to have an understanding of HTML and how to create a static web page. You don't need to have any programming experience. This book will also suit you if you have some programming experience already, and would like to turn your hand to web programming. You will know a fair amount about computing concepts, but maybe not as much about web technologies. Alternatively, you may have a design background and know relatively little about the Web and computing concepts. For you, JavaScript will be a cheap and relatively easy introduction to the world of programming and web application development. Whoever you are, we hope that this book lives up to your expectations. You'll begin by looking at exactly what JavaScript is, and taking your first steps with the underlying language and syntax. You'll learn all the fundamental programming concepts, including data and data types, and structuring your code to make decisions in your programs or to loop over the same piece of code many times. Once you're comfortable with the basics, you'll move on to one of the key ideas in JavaScript—the object. You'll learn how to take advantage of the objects that are native to the JavaScript language, such as dates and strings, and find out how these objects enable you to manage complex data and simplify your programs. Next, you'll see how you can use JavaScript to manipulate objects made available to you in the browser, such as forms, windows, and other controls. Using this knowledge, you can start to create truly professional-looking applications that enable you to interact with the user. Long pieces of code are very hard to get right every time—even for the experienced programmer—and JavaScript code is no exception. You look at common syntax and logical errors, how you can spot them, and how to use the Microsoft Script Debugger to aid you with this task. Also, you need to examine how to handle the errors that slip through the net, and ensure that these do not detract from the experience of the end user of your application. From here, you'll move on to more advanced topics, such as using cookies and jazzing up your web pages with dynamic HTML and XML. Finally, you'll be looking at a relatively new and exciting technology, remote scripting. This allows your JavaScript in a HTML page to communicate directly with a server, and useful for, say, looking up information on a database sitting on your server. If you have the Google toolbar you'll have seen something like this in action already. When you type a search word in the Google toolbar, it comes up with suggestions, which it gets via the Google search database. All the new concepts introduced in this book will be illustrated with practical examples, which enable you to experiment with JavaScript and build on the theory that you have just learned. The appendix provides solutions to the exercises included at the end of most chapters throughout the book. During the first half of the book, you'll also be building up a more complex sample application—an online trivia quiz—which will show you how JavaScript is used in action in a real-world situation.
The 4th edition feels very dated. Once you reach the point of accepting user data, the methods become a constant reminder of how much further along we are in web coding practices than we were in 2008. Plus the constant use of the HTML4 doctype dates this edition. I reached a point where I knew things were not good practice to follow and stopped reading. HTML in your JS feels dirty.
5th edition releases in March 2015. Hopefully this new edition will introduce current best practices.
I loved the format of this book - each example program is explained line by line (or block by block when that makes more sense). And the authors do this throughout the book! So when you get to later chapters, it's not assumed that you already know what's going on. Things are still explained in a clear, concise yet detailed, manner.
I decided to read this book, because I was looking for Javascript for starters, however I wasn't expecting a text for people with no exposure at all to software development. Despite of many boring chapters, explaining what programming actually is, I found there plenty of information that I was looking for. To summarize, it is a good introductory text to Javascript about both programming language and web development.
I always keep this book on my bookshelf for reference. I have never been a JavaScript fan but we all have to do it to get jobs done and this book has helped me out a lot over the years.