This Fifth Edition is completely revised and expanded to cover JavaScript as it is used in today's Web 2.0 applications. This book is both an example-driven programmer's guide and a keep-on-your-desk reference, with new chapters that explain everything you need to know to get the most out of JavaScript, including:Scripted HTTP and AjaxXML processingClient-side graphics using the canvas tagNamespaces in JavaScript--essential when writing complex programsClasses, closures, persistence, Flash, and JavaScript embedded in Java applicationsPart I explains the core JavaScript language in detail. If you are new to JavaScript, it will teach you the language. If you are already a JavaScript programmer, Part I will sharpen your skills and deepen your understanding of the language.Part II explains the scripting environment provided by web browsers, with a focus on DOM scripting with unobtrusive JavaScript. The broad and deep coverage of client-side JavaScript is illustrated with many sophisticated examples that demonstrate how to:Generate a table of contents for an HTML documentDisplay DHTML animationsAutomate form validationDraw dynamic pie chartsMake HTML elements draggableDefine keyboard shortcuts for web applicationsCreate Ajax-enabled tool tipsUse XPath and XSLT on XML documents loaded with AjaxAnd much morePart III is a complete reference for core JavaScript. It documents every class, object, constructor, method, function, property, and constant defined by JavaScript 1.5 and ECMAScript Version 3.Part IV is a reference for client-side JavaScript, covering legacy web browser APIs, the standard Level 2 DOM API, and emerging standards such as the XMLHttpRequest object and the canvas tag.More than 300,000 JavaScript programmers around the world have made this their indispensable reference book for building JavaScript applications."A must-have reference for expert JavaScript programmers...well-organized and detailed." -- Brendan Eich, creator of JavaScript
Cited By
- Zhangeldinov O Learning from Mistakes in an Open Source Software Course Software Engineering and Formal Methods. SEFM 2021 Collocated Workshops, (302-311)
- Zhang C, Gong Q and Koyamada K (2020). Visual analytics and prediction system based on deep belief networks for icing monitoring data of overhead power transmission lines, Journal of Visualization, 23:6, (1087-1100), Online publication date: 1-Dec-2020.
- Lechevalier D, Shin S, Rachuri S, Foufou S, Lee Y and Bouras A (2019). Simulating a virtual machining model in an agent-based model for advanced analytics, Journal of Intelligent Manufacturing, 30:4, (1937-1955), Online publication date: 1-Apr-2019.
- Thanapattheerakul T, Kongmanee J and Chan J Network-based visualization tool for analyzing gene expression data Proceedings of the 10th International Symposium on Visual Information Communication and Interaction, (77-78)
- De Benedetti M, Messina F, Pappalardo G and Santoro C (2017). Web-based Simulations of Multi-agent Systems, Simulation, 93:9, (737-748), Online publication date: 1-Sep-2017.
- Vatanparvar K and Al Faruque M Eco-friendly automotive climate control and navigation system for electric vehicles Proceedings of the 7th International Conference on Cyber-Physical Systems, (1-10)
- Pan X, Cao Y, Liu S, Zhou Y, Chen Y and Zhou T CSPAutoGen Proceedings of the 2016 ACM SIGSAC Conference on Computer and Communications Security, (653-665)
- Merelo J, Castillo P, García-Sánchez P, de las Cuevas P and García Valdez M NodIO Proceedings of the 2016 on Genetic and Evolutionary Computation Conference Companion, (1323-1330)
- Na Y, Kim S and Han Y (2016). JavaScript Parallelizing Compiler for Exploiting Parallelism from Data-Parallel HTML5 Applications, ACM Transactions on Architecture and Code Optimization, 12:4, (1-25), Online publication date: 7-Jan-2016.
- Gupta S and Gupta B (2016). XSS-immune, Security and Communication Networks, 9:17, (3966-3986), Online publication date: 25-Nov-2016.
- Brunelle J, Kelly M, Weigle M and Nelson M (2016). The impact of JavaScript on archivability, International Journal on Digital Libraries, 17:2, (95-117), Online publication date: 1-Jun-2016.
- Merelo-Guervós J and García-Sánchez P Designing and Modeling a Browser-Based DistributedEvolutionary Computation System Proceedings of the Companion Publication of the 2015 Annual Conference on Genetic and Evolutionary Computation, (1117-1124)
- Wei S and Ryder B State-Sensitive Points-to Analysis for the Dynamic Behavior of JavaScript Objects Proceedings of the 28th European Conference on ECOOP 2014 --- Object-Oriented Programming - Volume 8586, (1-26)
- Bonetta D, Binder W and Pautasso C (2013). TigerQuoll, ACM SIGPLAN Notices, 48:8, (251-260), Online publication date: 23-Aug-2013.
- Yue C and Wang H (2013). A measurement study of insecure javascript practices on the web, ACM Transactions on the Web, 7:2, (1-39), Online publication date: 1-May-2013.
- Bonetta D, Binder W and Pautasso C TigerQuoll Proceedings of the 18th ACM SIGPLAN symposium on Principles and practice of parallel programming, (251-260)
- Kang S and Ryu S (2012). Formal specification of a JavaScript module system, ACM SIGPLAN Notices, 47:10, (621-638), Online publication date: 15-Nov-2012.
- Kang S and Ryu S Formal specification of a JavaScript module system Proceedings of the ACM international conference on Object oriented programming systems languages and applications, (621-638)
- Arthur R and Olsen D (2012). Window brokers, ACM Transactions on Computer-Human Interaction, 19:3, (1-21), Online publication date: 1-Oct-2012.
- Zakai A Emscripten Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion, (301-312)
- Mickens J and Dhawan M Atlantis Proceedings of the Twenty-Third ACM Symposium on Operating Systems Principles, (217-231)
- Lee S and Moon S Selective just-in-time compilation for client-side mobile javascript engine Proceedings of the 14th international conference on Compilers, architectures and synthesis for embedded systems, (5-14)
- Arthur R and Olsen D (2011). XICE windowing toolkit, ACM Transactions on Computer-Human Interaction, 18:3, (1-46), Online publication date: 1-Jul-2011.
- Mickens J, Elson J, Howell J and Lorch J Crom Proceedings of the 7th USENIX conference on Networked systems design and implementation, (9-9)
- Mikkonen T and Taivalsaari A The mashware challenge Proceedings of the FSE/SDP workshop on Future of software engineering research, (245-250)
- Jang D, Jhala R, Lerner S and Shacham H An empirical study of privacy-violating information flows in JavaScript web applications Proceedings of the 17th ACM conference on Computer and communications security, (270-283)
- Bray Z and Kristensson P Using ensembles of decision trees to automate repetitive tasks in web applications Proceedings of the 2nd ACM SIGCHI symposium on Engineering interactive computing systems, (35-40)
- Arsov I, Preda M and Preteux F A server-assisted approach for mobile-phone games Mobile Multimedia Processing, (170-187)
- Mickens J Silo Proceedings of the 2010 USENIX conference on Web application development, (9-9)
- Khoo Y, Hicks M, Foster J and Sazawal V (2009). Directing JavaScript with arrows, ACM SIGPLAN Notices, 44:12, (49-58), Online publication date: 25-Dec-2009.
- Fernández L, Robles S, Fortier A, Ducasse S, Rossi G and Gordillo S Meteoroid towards a real MVC for the web Proceedings of the International Workshop on Smalltalk Technologies, (28-37)
- Rose J Bytecodes meet combinators Proceedings of the Third Workshop on Virtual Machines and Intermediate Languages, (1-11)
- Mikkonen T, Taivalsaari A and Terho M Lively for Qt Proceedings of the 6th International Conference on Mobile Technology, Application & Systems, (1-8)
- Khoo Y, Hicks M, Foster J and Sazawal V Directing JavaScript with arrows Proceedings of the 5th symposium on Dynamic languages, (49-58)
- Kuuskeri J and Mikkonen T Partitioning web applications between the server and the client Proceedings of the 2009 ACM symposium on Applied Computing, (647-652)
- Mikkonen T and Taivalsaari A Creating a mobile web application platform Proceedings of the 2009 ACM symposium on Applied Computing, (177-184)
- Yue C and Wang H Characterizing insecure javascript practices on the web Proceedings of the 18th international conference on World wide web, (961-970)
- Chong S, Liu J, Myers A, Qi X, Vikram K, Zheng L and Zheng X (2009). Building secure web applications with automatic partitioning, Communications of the ACM, 52:2, (79-87), Online publication date: 1-Feb-2009.
- Wang H, Grier C, Moshchuk A, King S, Choudhury P and Venter H The multi-principal OS construction of the gazelle web browser Proceedings of the 18th conference on USENIX security symposium, (417-432)
- Maffeis S, Mitchell J and Taly A Isolating JavaScript with filters, rewriting, and wrappers Proceedings of the 14th European conference on Research in computer security, (505-522)
- Rivolli A, Marinho D and Pansanato L WAUTT Companion Proceedings of the XIV Brazilian Symposium on Multimedia and the Web, (179-181)
- Dourado Í and Costa D Interpretação de conteúdo AJAX em páginas dinâmicas para suporte à localização de informações na web Companion Proceedings of the XIV Brazilian Symposium on Multimedia and the Web, (140-142)
- Rivolli A, Marinho D and Pansanato L Uma abordagem para o rastreamento da interaçao do usuário com aplicações interativas web Proceedings of the 14th Brazilian Symposium on Multimedia and the Web, (28-35)
- Sharp R, Madhavapeddy A, Want R and Pering T Enhancing web browsing security on public terminals using mobile composition Proceedings of the 6th international conference on Mobile systems, applications, and services, (94-105)
- Scaffidi C, Myers B and Shaw M Topes Proceedings of the 30th international conference on Software engineering, (1-10)
- Guo R, Zhu B, FENG M, PAN A and ZHOU B Compoweb Proceedings of the 17th international conference on World Wide Web, (545-554)
- Popescu D, Selisteanu D, Dinulescu I and Lazar D Development of online experiments for a mobile robot via internet Proceedings of the 9th WSEAS International Conference on International Conference on Automation and Information, (519-524)
- Chong S, Liu J, Myers A, Qi X, Vikram K, Zheng L and Zheng X (2007). Secure web applications via automatic partitioning, ACM SIGOPS Operating Systems Review, 41:6, (31-44), Online publication date: 14-Oct-2007.
- Wang H, Fan X, Howell J and Jackson C (2007). Protection and communication abstractions for web browsers in MashupOS, ACM SIGOPS Operating Systems Review, 41:6, (1-16), Online publication date: 14-Oct-2007.
- Chong S, Liu J, Myers A, Qi X, Vikram K, Zheng L and Zheng X Secure web applications via automatic partitioning Proceedings of twenty-first ACM SIGOPS symposium on Operating systems principles, (31-44)
- Wang H, Fan X, Howell J and Jackson C Protection and communication abstractions for web browsers in MashupOS Proceedings of twenty-first ACM SIGOPS symposium on Operating systems principles, (1-16)
- Hanus M Putting declarative programming into the web Proceedings of the 9th ACM SIGPLAN international conference on Principles and practice of declarative programming, (155-166)
- Jin J, Maheswaran R, Sanchez R and Szekely P VizScript Proceedings of the 12th international conference on Intelligent user interfaces, (369-372)
- Raffetseder T, Kirda E and Kruegel C Building Anti-Phishing Browser Plug-Ins Proceedings of the Third International Workshop on Software Engineering for Secure Systems
- Ungar D and Smith R Self Proceedings of the third ACM SIGPLAN conference on History of programming languages, (9-1-9-50)
- Ho A, Fetterman M, Clark C, Warfield A and Hand S (2006). Practical taint-based protection using demand emulation, ACM SIGOPS Operating Systems Review, 40:4, (29-41), Online publication date: 1-Oct-2006.
- Ho A, Fetterman M, Clark C, Warfield A and Hand S Practical taint-based protection using demand emulation Proceedings of the 1st ACM SIGOPS/EuroSys European Conference on Computer Systems 2006, (29-41)
Index Terms
- JavaScript: The Definitive Guide