Javascript.Pdf

Total Page:16

File Type:pdf, Size:1020Kb

Javascript.Pdf JavaScript #javascript Table of Contents About 1 Chapter 1: Getting started with JavaScript 2 Remarks 2 Versions 2 Examples 3 Using the DOM API 3 Using console.log() 4 Introduction 4 Getting Started 4 Logging variables 5 Placeholders 5 Logging Objects 6 Logging HTML elements 6 End Note 7 Using window.alert() 7 Notes 7 Using window.prompt() 8 Syntax 8 Examples 8 Notes 9 Using the DOM API (with graphical text: Canvas, SVG, or image file) 9 Using window.confirm() 10 Notes 11 Chapter 2: .postMessage() and MessageEvent 12 Syntax 12 Parameters 12 Examples 12 Getting Started 12 What is .postMessage(), when and why do we use it 12 Sending messages 12 Receiving, Validating and Processing Messages 13 Chapter 3: AJAX 15 Introduction 15 Remarks 15 Examples 15 Using GET and no parameters 15 Sending and Receiving JSON Data via POST 15 Displaying the top JavaScript questions of the month from Stack Overflow's API 16 Using GET with parameters 17 Check if a file exists via a HEAD request 17 Add an AJAX preloader 18 Listening to AJAX events at a global level 19 Chapter 4: Anti-patterns 20 Examples 20 Chaining assignments in var declarations. 20 Chapter 5: Arithmetic (Math) 21 Remarks 21 Examples 21 Addition (+) 21 Subtraction (-) 22 Multiplication (*) 22 Division (/) 22 Remainder / Modulus (%) 23 Using modulus to obtain the fractional part of a number 24 Incrementing (++) 24 Decrementing (--) 24 Common Uses 25 Exponentiation (Math.pow() or **) 25 Use Math.pow to find the nth root of a number. 26 Constants 26 Trigonometry 27 Sine 27 Cosine 28 Tangent 28 Rounding 28 Rounding 29 Rounding up 29 Rounding down 29 Truncating 29 Rounding to decimal places 30 Random Integers and Floats 31 Bitwise operators 31 Bitwise or 31 Bitwise and 32 Bitwise not 32 Bitwise xor (exclusive or) 32 Bitwise left shift 32 Bitwise right shift >> (Sign-propagating shift) >>> (Zero-fill right shift) 32 Bitwise assignment operators 33 Get Random Between Two Numbers 34 Random with gaussian distribution 34 Ceiling and Floor 35 Math.atan2 to find direction 36 Direction of a vector 36 Direction of a line 36 Direction from a point to another point 36 Sin & Cos to create a vector given direction & distance 36 Math.hypot 37 Periodic functions using Math.sin 37 Simulating events with different probabilities 39 Little / Big endian for typed arrays when using bitwise operators 40 Getting maximum and minimum 41 Getting maximum and minimum from an array: 41 Restrict Number to Min/Max Range 42 Getting roots of a number 42 Square Root 42 Cube Root 42 Finding nth-roots 42 Chapter 6: Arrays 43 Syntax 43 Remarks 43 Examples 43 Standard array initialization 43 Array spread / rest 44 Spread operator 44 Rest operator 45 Mapping values 45 Filtering values 46 Filter falsy values 47 Another simple example 47 Iteration 47 A traditional for-loop 48 Using a traditional for loop to loop through an array 48 A while loop 49 for...in 49 for...of 49 Array.prototype.keys() 50 Array.prototype.forEach() 50 Array.prototype.every 51 Array.prototype.some 51 Libraries 52 Filtering Object Arrays 52 Joining array elements in a string 54 Converting Array-like Objects to Arrays 54 What are Array-like Objects? 54 Convert Array-like Objects to Arrays in ES6 55 Convert Array-like Objects to Arrays in ES5 55 Modifying Items During Conversion 56 Reducing values 57 Array Sum 57 Flatten Array of Objects 57 Map Using Reduce 58 Find Min or Max Value 58 Find Unique Values 59 Logical connective of values 59 Concatenating Arrays 60 Append / Prepend items to Array 62 Unshift 62 Push 62 Object keys and values to array 62 Sorting multidimensional array 63 Removing items from an array 63 Shift 63 Pop 64 Splice 64 Delete 65 Array.prototype.length 65 Reversing arrays 65 Remove value from array 66 Checking if an object is an Array 66 Sorting Arrays 67 Shallow cloning an array 69 Searching an Array 70 FindIndex 70 Removing/Adding elements using splice() 70 Array comparison 71 Destructuring an array 72 Removing duplicate elements 72 Removing all elements 73 Method 1 73 Method 2 74 Method 3 74 Using map to reformat objects in an array 74 Merge two array as key value pair 75 Convert a String to an Array 76 Test all array items for equality 76 Copy part of an Array 77 begin 77 end 77 Example 1 77 Example 2 77 Finding the minimum or maximum element 78 Flattening Arrays 79 2 Dimensional arrays 79 Higher Dimension Arrays 79 Insert an item into an array at a specific index 80 The entries() method 80 Chapter 7: Arrow Functions 82 Introduction 82 Syntax 82 Remarks 82 Examples 82 Introduction 82 Lexical Scoping & Binding (Value of "this") 83 Arguments Object 84 Implicit Return 84 Explicit Return 85 Arrow functions as a constructor 85 Chapter 8: Async functions (async/await) 86 Introduction 86 Syntax 86 Remarks 86 Examples 86 Introduction 86 Arrow function style 87 Less indentation 87 Await and operator precedence 87 Async functions compared to Promises 88 Looping with async await 90 Simultaneous async (parallel) operations 91 Chapter 9: Async Iterators 93 Introduction 93 Syntax 93 Remarks 93 Useful Links 93 Examples 93 Basics 93 Chapter 10: Automatic Semicolon Insertion - ASI 95 Examples 95 Rules of Automatic Semicolon Insertion 95 Statements affected by automatic semicolon insertion 95 Avoid semicolon insertion on return statements 96 Chapter 11: Battery Status API 98 Remarks 98 Examples 98 Getting current battery level 98 Is battery charging? 98 Get time left until battery is empty 98 Get time left until battery is fully charged 98 Battery Events 99 Chapter 12: Behavioral Design Patterns 100 Examples 100 Observer pattern 100 Mediator Pattern 101 Command 102 Iterator 103 Chapter 13: Binary Data 106 Remarks 106 Examples 106 Converting between Blobs and ArrayBuffers 106 Convert a Blob to an ArrayBuffer (asynchronous) 106 Convert a Blob to an ArrayBuffer using a Promise (asynchronous) 106 Convert an ArrayBuffer or typed array to a Blob 107 Manipulating ArrayBuffers with DataViews 107 Creating a TypedArray from a Base64 string 107 Using TypedArrays 107 Getting binary representation of an image file 108 Iterating through an arrayBuffer 109 Chapter 14: Bitwise operators 111 Examples 111 Bitwise operators 111 Conversion to 32-bit integers 111 Two's Complement 111 Bitwise AND 111 Bitwise OR 112 Bitwise NOT 112 Bitwise XOR 113 Shift Operators 113 Left Shift 113 Right Shift (Sign-propagating) 113 Right Shift (Zero fill) 114 Chapter 15: Bitwise Operators - Real World Examples (snippets) 115 Examples 115 Number's Parity Detection with Bitwise AND 115 Swapping Two Integers with Bitwise XOR (without additional memory allocation) 115 Faster multiplication or division by powers of 2 115 Chapter 16: BOM (Browser Object Model) 117 Remarks 117 Examples 117 Introduction 117 Window Object Methods 118 Window Object Properties 118 Chapter 17: Built-in Constants 120 Examples 120 Operations that return NaN 120 Math library functions that return NaN 120 Testing for NaN using isNaN() 120 window.isNaN() 120 Number.isNaN() 121 null 122 undefined and null 122 Infinity and -Infinity 124 NaN 124 Number constants 125 Chapter 18: Callbacks 126 Examples 126 Simple Callback Usage Examples 126 Examples with Asynchronous Functions 127 What is a callback? 128 Continuation (synchronous and asynchronous) 128 Error handling and control-flow branching 129 Callbacks and `this` 130 Solutions 130 Solutions: 131 Callback using Arrow function 132 Chapter 19: Classes 133 Syntax 133 Remarks 133 Examples 133 Class Constructor 134 Static Methods 134 Getters and Setters 135 Class Inheritance 136 Private Members 136 Dynamic Method Names 137 Methods 138 Managing Private Data with Classes 138 Using Symbols 138 Using WeakMaps 139 Define all methods inside the constructor 140 Using naming conventions 140 Class Name binding 140 Chapter 20: Comments 142 Syntax 142 Examples 142 Using Comments 142 Single line Comment // 142 Multi-line Comment /**/ 142 Using HTML comments in JavaScript (Bad practice) 142 Chapter 21: Comparison Operations 145 Remarks 145 Examples 145 Logic Operators with Booleans 145 AND 145 OR 145 NOT 145 Abstract Equality (==) 146 7.2.13 Abstract Equality Comparison 146 Examples: 146 Relational operators (<, <=, >, >=) 147 Inequality 147 Logic Operators with Non-boolean values (boolean coercion) 148 Null and Undefined 149 The differences between null and undefined 149 The similarities between null and undefined 149 Using undefined 150 NaN Property of the Global Object 150 Checking if a value is NaN 150 Points to note 152 Short-circuiting in boolean operators 152 Abstract equality / inequality and type conversion 154 The Problem 154 The Solution 155 Empty Array 156 Equality comparison operations 156 SameValue 156 SameValueZero 156 Strict Equality Comparison 157 Abstract Equality Comparison 158 Grouping multiple logic statements 158 Automatic Type Conversions 159 List of Comparison Operators 159 Bit fields to optimise comparison of multi state data 160 Chapter 22: Conditions 162 Introduction 162 Syntax 162 Remarks 163 Examples 163 If / Else If / Else Control 163 Switch statement 164 Multiple Inclusive Criteria for Cases 166 Ternary operators 166 Strategy 168 Using || and && short circuiting 169 Chapter 23: Console 170 Introduction 170 Syntax 170 Parameters 170 Remarks 170 Opening the Console 171 Chrome 171 Firefox 171 Edge and Internet Explorer 172 Safari 172 Opera 173 Compatibility 173 Examples 174 Tabulating values - console.table() 174 Including a stack trace when logging - console.trace() 175 Printing to a browser's debugging console 176 Other print methods 177 Measuring time - console.time()
Recommended publications
  • International Standard Iso 32000-2
    This preview is downloaded from www.sis.se. Buy the entire standard via https://www.sis.se/std-922178 INTERNATIONAL ISO STANDARD 32000-2 First edition 2017-07 Document management — Portable document format — Part 2: PDF 2.0 Gestion de documents — Format de document portable — Partie 2: PDF 2.0 Reference number ISO 32000-2:2017(E) © ISO 2017 This preview is downloaded from www.sis.se. Buy the entire standard via https://www.sis.se/std-922178 ISO 32000-2:2017(E) COPYRIGHT PROTECTED DOCUMENT © ISO 2017, Published in Switzerland All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized otherwise in any form orthe by requester. any means, electronic or mechanical, including photocopying, or posting on the internet or an intranet, without prior written permission. Permission can be requested from either ISO at the address below or ISO’s member body in the country of Ch. de Blandonnet 8 • CP 401 ISOCH-1214 copyright Vernier, office Geneva, Switzerland Tel. +41 22 749 01 11 Fax +41 22 749 09 47 www.iso.org [email protected] ii © ISO 2017 – All rights reserved This preview is downloaded from www.sis.se. Buy the entire standard via https://www.sis.se/std-922178 ISO 32000-2:2017(E) Contents Page Foreword ................................................................................................................................................................. vii Introduction .........................................................................................................................................................
    [Show full text]
  • IEEE Standard 754 for Binary Floating-Point Arithmetic
    Work in Progress: Lecture Notes on the Status of IEEE 754 October 1, 1997 3:36 am Lecture Notes on the Status of IEEE Standard 754 for Binary Floating-Point Arithmetic Prof. W. Kahan Elect. Eng. & Computer Science University of California Berkeley CA 94720-1776 Introduction: Twenty years ago anarchy threatened floating-point arithmetic. Over a dozen commercially significant arithmetics boasted diverse wordsizes, precisions, rounding procedures and over/underflow behaviors, and more were in the works. “Portable” software intended to reconcile that numerical diversity had become unbearably costly to develop. Thirteen years ago, when IEEE 754 became official, major microprocessor manufacturers had already adopted it despite the challenge it posed to implementors. With unprecedented altruism, hardware designers had risen to its challenge in the belief that they would ease and encourage a vast burgeoning of numerical software. They did succeed to a considerable extent. Anyway, rounding anomalies that preoccupied all of us in the 1970s afflict only CRAY X-MPs — J90s now. Now atrophy threatens features of IEEE 754 caught in a vicious circle: Those features lack support in programming languages and compilers, so those features are mishandled and/or practically unusable, so those features are little known and less in demand, and so those features lack support in programming languages and compilers. To help break that circle, those features are discussed in these notes under the following headings: Representable Numbers, Normal and Subnormal, Infinite
    [Show full text]
  • Ecma International External Liaison Report for 2013-2014
    Ecma/TC39/2014/029 Ecma/TC49/2014/010 Ecma International External Liaison Report for 2013–2014 Prepared for the ISO/IEC JTC 1/SC 22 Plenary in Madrid, Spain September 8–9, 2014 Prepared by Rex Jaeschke [email protected] Date: 2014-07-17 Recommendation to SC 22 regarding the Portable Common Tool Environment (PCTE) Standards The draft agenda for the 2014 Plenary of SC 22 lists the following standards as being up for Periodic Review: • ISO/IEC 13719-1:1998 Information technology -- Portable Common Tool Environment (PCTE) – Part 1: Abstract specification • ISO/IEC 13719-2:1998 Information technology -- Portable Common Tool Environment (PCTE) – Part 2: C programming language binding • ISO/IEC 13719-3:1998 Information technology -- Portable common tool environment (PCTE) – Part 3: Ada programming language binding • ISO/IEC 13719-4:1998 Information technology -- Portable Common Tool Environment (PCTE) – Part 4: IDL binding (Interface Definition Language) These standards were developed and published by Ecma, and then Fast-Tracked to JTC 1. No work has been done on them since and there is no longer a Technical Committee for PCTE. As such, Ecma recommends that SC 22 stabilize these standards. Ecma (www.ecma-international.org) currently has two Technical Committees, TC39 and TC49 (the latter having multiple Task Groups), with SC 22-related projects, as follows: 1. TC39 (ECMAScript language): ECMAScript 5th edition was adopted by the Ecma General Assembly in December 2009, and then published as ISO/IEC 16262:2011 (which ECMA-262 edition 5.1 now matches). The editor of record for the standard is Allen Wirfs-Brock.
    [Show full text]
  • The Implementation of Large Video File Upload System Based on the HTML5 API and Ajax Yungeng Xu , Sanxing
    Joint International Mechanical, Electronic and Information Technology Conference (JIMET 2015) The Implementation of Large Video File Upload System Based on the HTML5 API and Ajax Yungeng Xu1, a, Sanxing Cao2, b 1 Department of Science and Engineering, Communication University of China, Beijing 2 New Media Institute, Communication University of China, Beijing a b [email protected], [email protected] Keywords: HTML5; File upload; Shell; XMLHttpRequest Abstract. The function of upload file is an important web page designs. Traditional file upload function for file upload function by HTML form and $_FILES system function, has the advantages of convenience, can cope with a relatively small file upload. The traditional HTML way has been difficult to meet the upload of the oversized file. Service not only to open a link waiting for this file is uploaded, but also to allocate the same size of memory to save this file. In the case of large concurrency may cause a great pressure on the server. This article is the use of HTML5 File API to upload video files in the original form on the basis of form, use the function of slice inside the HTML5 file API for the split file upload, to achieve the result of no refresh upload files. Have a valid practical significance. Introduction With the development of web technology, watch videos on the website has become an important forms of entertainment in the people's daily life. Internet video give people a great deal of freedom to choose the way of entertainment, not limited to the live TV mode. People can watch the video on the webpage.
    [Show full text]
  • XML: Looking at the Forest Instead of the Trees Guy Lapalme Professor Département D©Informatique Et De Recherche Opérationnelle Université De Montréal
    XML: Looking at the Forest Instead of the Trees Guy Lapalme Professor Département d©informatique et de recherche opérationnelle Université de Montréal C.P. 6128, Succ. Centre-Ville Montréal, Québec Canada H3C 3J7 [email protected] http://www.iro.umontreal.ca/~lapalme/ForestInsteadOfTheTrees/ Publication date April 14, 2019 XML to PDF by RenderX XEP XSL-FO Formatter, visit us at http://www.renderx.com/ XML: Looking at the Forest Instead of the Trees Guy Lapalme Professor Département d©informatique et de recherche opérationnelle Université de Montréal C.P. 6128, Succ. Centre-Ville Montréal, Québec Canada H3C 3J7 [email protected] http://www.iro.umontreal.ca/~lapalme/ForestInsteadOfTheTrees/ Publication date April 14, 2019 Abstract This tutorial gives a high-level overview of the main principles underlying some XML technologies: DTD, XML Schema, RELAX NG, Schematron, XPath, XSL stylesheets, Formatting Objects, DOM, SAX and StAX models of processing. They are presented from the point of view of the computer scientist, without the hype too often associated with them. We do not give a detailed description but we focus on the relations between the main ideas of XML and other computer language technologies. A single compact pretty-print example is used throughout the text to illustrate the processing of an XML structure with XML technologies or with Java programs. We also show how to create an XML document by programming in Java, in Ruby, in Python, in PHP, in E4X (Ecmascript for XML) and in Swift. The source code of the example XML ®les and the programs are available either at the companion web site of this document or by clicking on the ®le name within brackets at the start of the caption of each example.
    [Show full text]
  • Introduction to Python
    Introduction to Python Wei Feinstein HPC User Services LSU HPC & LONI [email protected] Louisiana State University March, 2017 Introduction to Python Overview • What is Python • Python programming basics • Control structures, functions • Python modules, classes • Plotting with Python Introduction to Python What is Python? • A general-purpose programming language (1980) by Guido van Rossum • Intuitive and minimalistic coding • Dynamically typed • Automatic memory management • Interpreted not compiled Introduction to Python 3 Why Python? Advantages • Ease of programming • Minimizes the time to develop and maintain code • Modular and object-oriented • Large standard and user-contributed libraries • Large community of users Disadvantages • Interpreted and therefore slower than compiled languages • Not great for 3D graphic applications requiring intensive compuations Introduction to Python 4 Code Performance vs. Development Time Python C/C++ Assembly Introduction to Python 5 Python 2.x vs 3.x • Final Python 2.x is 2.7 (2010) • First Python 3.x is 3.0 (2008) • Major cleanup to better support Unicode data formats in Python 3.x • Python 3 not backward-compatible with Python 2 • Rich packages available for Python 2z $ python -- version Introduction to Python 6 IPython • Python: a general-purpose programming language (1980) • IPython: an interactive command shell for Python (2001) by Fernando Perez • Enhanced Read-Eval-Print Loop (REPL) environment • Command tab-completion, color-highlighted error messages.. • Basic Linux shell integration (cp, ls, rm…) • Great for plotting! http://ipython.org Introduction to Python 7 Jupyter Notebook IPython introduced a new tool Notebook (2011) • Bring modern and powerful web interface to Python • Rich text, improved graphical capabilities • Integrate many existing web libraries for data visualization • Allow to create and share documents that contain live code, equations, visualizations and explanatory text.
    [Show full text]
  • Numerical Computation Guide
    Numerical Computation Guide Sun™ Studio 9 Sun Microsystems, Inc. www.sun.com Part No. 817-6702-10 July 2004, Revision A Submit comments about this document at: http://www.sun.com/hwdocs/feedback Copyright © 2004 Sun Microsystems, Inc., 4150 Network Circle, Santa Clara, California 95054, U.S.A. All rights reserved. U.S. Government Rights - Commercial software. Government users are subject to the Sun Microsystems, Inc. standard license agreement and applicable provisions of the FAR and its supplements. Use is subject to license terms. This distribution may include materials developed by third parties. Parts of the product may be derived from Berkeley BSD systems, licensed from the University of California. UNIX is a registered trademark in the U.S. and in other countries, exclusively licensed through X/Open Company, Ltd. Sun, Sun Microsystems, the Sun logo, Java, and JavaHelp are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and other countries.All SPARC trademarks are used under license and are trademarks or registered trademarks of SPARC International, Inc. in the U.S. and other countries. Products bearing SPARC trademarks are based upon architecture developed by Sun Microsystems, Inc. This product is covered and controlled by U.S. Export Control laws and may be subject to the export or import laws in other countries. Nuclear, missile, chemical biological weapons or nuclear maritime end uses or end users, whether direct or indirect, are strictly prohibited. Export or reexport to countries subject to U.S. embargo or to entities identified on U.S. export exclusion lists, including, but not limited to, the denied persons and specially designated nationals lists is strictly prohibited.
    [Show full text]
  • Supplementary Materials
    Contents 2 Programming Language Syntax C 1 2.3.5 Syntax Errors C 1 2.4 Theoretical Foundations C 13 2.4.1 Finite Automata C 13 2.4.2 Push-Down Automata C 18 2.4.3 Grammar and Language Classes C 19 2.6 Exercises C 24 2.7 Explorations C 25 3 Names, Scopes, and Bindings C 26 3.4 Implementing Scope C 26 3.4.1 Symbol Tables C 26 3.4.2 Association Lists and Central Reference Tables C 31 3.8 Separate Compilation C 36 3.8.1 Separate Compilation in C C 37 3.8.2 Packages and Automatic Header Inference C 40 3.8.3 Module Hierarchies C 41 3.10 Exercises C 42 3.11 Explorations C 44 4SemanticAnalysis C 45 4.5 Space Management for Attributes C 45 4.5.1 Bottom-Up Evaluation C 45 4.5.2 Top-Down Evaluation C 50 C ii Contents 4.8 Exercises C 57 4.9 Explorations C 59 5 Target Machine Architecture C 60 5.1 The Memory Hierarchy C 61 5.2 Data Representation C 63 5.2.1 Integer Arithmetic C 65 5.2.2 Floating-Point Arithmetic C 67 5.3 Instruction Set Architecture (ISA) C 70 5.3.1 Addressing Modes C 71 5.3.2 Conditions and Branches C 72 5.4 Architecture and Implementation C 75 5.4.1 Microprogramming C 76 5.4.2 Microprocessors C 77 5.4.3 RISC C 77 5.4.4 Multithreading and Multicore C 78 5.4.5 Two Example Architectures: The x86 and ARM C 80 5.5 Compiling for Modern Processors C 88 5.5.1 Keeping the Pipeline Full C 89 5.5.2 Register Allocation C 93 5.6 Summary and Concluding Remarks C 98 5.7 Exercises C 100 5.8 Explorations C 104 5.9 Bibliographic Notes C 105 6 Control Flow C 107 6.5.4 Generators in Icon C 107 6.7 Nondeterminacy C 110 6.9 Exercises C 116 6.10 Explorations
    [Show full text]
  • Download and Execution, Along with Metadata That Dr
    Table of Contents Preface 5 Purpose and Membership 7 Ecma's role in International Standardization 9 Organization of Ecma International* 10 General Assembly 13 Ordinary members 14 Associate members 16 SME members 17 SPC members 18 Not-for-Profit members 19 Technical Committees 21 Index of Ecma Standards 57 Ecma Standards and corresponding International and European Standards 61 Technical Reports 81 List of Representatives 84 Ecma By-laws 139 Ecma Rules 146 Code of Conduct in Patent Matters 151 Withdrawn Ecma Standards and Technical Reports 153 History of Ecma International 165 Past Presidents / Secretary General 166 * Often called Ecma, or ECMA (in the past), short for Ecma International. - 3 - Preface Information Technology, Telecommunications and Consumer Electronics are key factors in today's economic and social environment. Effective interchange both of commercial, technical, and administrative data, text and images and of audiovisual information is essential for the growth of economy in the world markets. Through the increasing digitalization of information technology, telecommunications and consumer electronics are getting more and more integrated. Open Systems and Distributed Networks based on worldwide recognized standards will not only provide effective interchange of information but also help to remove technical barriers to trade. In particular harmonized standards are recognized as a prerequisite for the establishment of the European economic area. From 1961 until 1994, ECMA (European Computer Manufacturers Association), then Ecma International (Ecma, for short) has actively contributed to worldwide standardization in information technology, communications and consumer electronics (ICT and CE). More than 380 Ecma Standards and 90 Technical Reports of high quality have been published.
    [Show full text]
  • Ecma Template for Minutes
    Memento 2010 Table of Contents Preface 2 Purpose and Membership 3 Ecma's role in International Standardization 4 Organization of Ecma International* 5 General Assembly 7 Ordinary members 8 Associate members 9 SME members 10 SPC members 11 Not-for-Profit members 12 Technical Committees 14 Index of Ecma Standards 45 Ecma Standards and corresponding International and European Standards 48 Technical Reports 63 List of Representatives 66 Ecma By-laws 109 Ecma Rules 115 Code of Conduct in Patent Matters 119 Withdrawn Ecma Standards and Technical Reports 121 History of Ecma International 129 About the Ecma Mementos 130 Past Presidents / Secretaries General 131 * Often called Ecma, or ECMA (in the past), short for Ecma International. Ecma International Rue du Rhône 114 CH-1204 Geneva T/F: +41 22 849 6000/01 www.ecma-international.org IW Memento10.doc 20/01/2010 15:49:00 For Ecma use only Preface Information Technology, Telecommunications and Consumer Electronics are key factors in today's economic and social environment. Effective interchange both of commercial, technical, and administrative data, text and images and of audiovisual information is essential for the growth of economy in the world markets. Through the increasing digitalization of information technology, telecommunications and consumer electronics are getting more and more integrated. Open Systems and Distributed Networks based on worldwide recognized standards will not only provide effective interchange of information but also help to remove technical barriers to trade. In particular harmonized standards are recognized as a prerequisite for the establishment of the European economic area. From 1961 until 1994, ECMA (European Computer Manufacturers Association), then Ecma International (Ecma, for short) has actively contributed to worldwide standardization in information technology, communications and consumer electronics (ICT and CE).
    [Show full text]
  • Sessionstorage
    Offline First HTML5 technologies for a faster, smarter, more engaging web © 2014 John Allsopp, Web Directions draft 1 intro-1 Offline Apps with HTML5 What if I told you that you don’t have to be online to use the Web? There’s a general (and understandable) belief by many developers, not to mention most users, that websites and web applications have a very serious limitation – they can only be used when the browser has a web connection. Indeed, this is routinely cited as one of the real advantages of so-called native apps over the Web. As counter-intuitive as it sounds, in almost every modern browser on any device (including IE10 and up), it’s no longer the case that users need to be connected to the Web to use our websites and applications, provided we developers do a little extra work to make our site or application persist when a browser is offline. This opens up a whole range of opportunities, leveling the field with native apps that can be installed on the user’s phone, tablet, laptop or desktop computer, or indeed any other device capable of running apps. But there are many more benefits to offline technologies than simply allowing websites and apps to work offline, as we’ll soon discover. Offline First Recently the team behind the “Hoodie” framework published “Offline first”1 a new way of thinking about developing for the Web. They observe that even in the developed world, mobile bandwidth and connectivity, increasingly the primary way in which people connect to the Web, are not always guaranteed to be there, or be reliable, and, they state: “We can’t keep building apps with the desktop mindset of permanent, fast connectivity, where a temporary disconnection or slow service is regarded as a problem and communicated as an error.” And when we think of offline and online, we typically only focus on the client, but servers go offline as well, both for routine maintenance, or in times of crisis, or under heavy stress.
    [Show full text]
  • Advanced HTML5 and CSS3 Specialist Exam 1D0-620
    Advanced HTML5 And CSS3 Specialist Exam 1D0-620 Domain 1: HTML5 Essentials 1.1 Consider HTML5 development skills you can apply to both traditional and non-traditional delivery platforms, including mobile apps. 1.2 Identify the Web development trifecta and explain its significance. 1.3 Explain the evolution of HTML and its relevance to modern design techniques. 1.4 Create and deploy HTML5 structure tags. 1.5 Perform HTML5 code validation, which includes explaining the practical value of code validation and listing the steps to validate HTML5 code. 1.6 Explain the importance of universal markup creation. 1.7 Apply the HTML5 <video> element appropriately. 1.8 Use the HTML5 <audio> element. 1.9 Define common elements of HTML5 application programming interfaces (APIs). Domain 2: Using Cascading Style Sheets (CSS) Technology 2.1 Explain the function and purpose of the Cascading Style Sheets (CSS) technology. 2.2 Explain the importance of using style guides when designing sites and documents. 2.3 Define common CSS terms and syntax. 2.4 Apply CSS styles to format pages. 2.5 Develop and apply page layouts with CSS. 2.6 Use CSS to position content and apply document flow. 2.7 Define common CSS positioning schemes. 2.8 Use the CSS Box Model. Domain 3: Introduction to CSS Version 3 (CSS3) 3.1 List the features added to CSS functionality in CSS version 3 (CSS3). 3.2 Apply common CSS3 properties and selectors. 3.3 Apply backgrounds and borders with CSS3. 3.4 Apply fonts and text effects with CSS3. Certification Partners, LLC - 1.800.228.1027 - 1.602.275.7700 www.CIWcertified.com - www.Certification-Partners.com Domain 4: Using Advanced CSS3 Techniques 4.1 Apply 2D and 3D transformations with CSS3.
    [Show full text]