SlideShare una empresa de Scribd logo
1 de 22
Tech Lunch 04/17
ECMAScript
26.04.2017, SSO - Silvan Seeholzer
‒Was ist «ECMAScript»
‒Wer steckt hinter ECMAScript?
‒ Geschichte und Entstehung
‒ ES 5
‒ ES 2015 (ES 6)
‒ ES 2016 (ES 7)
‒ ES 2017 (ES 8)
‒Transcompiler
‒ Unterschiede derVersionen ES5 <-> ES6
‒ Kompatibilität / Akzeptanz in Browsern
‒ Fragen & Antworten
Agenda.
Was ist ECMAScript
arcade solutions ag
- ECMAScriptTM ist eine Skript Sprachen Spezifikation
- Standardisiert von ECMA International mit ECMA-262 & ISO/IEC
16262
- Ins Leben gerufen um verschiedene Skriptsprachen mit all ihren
Dialekten wie JavaScript, JScript &ActionScript usw. zu
standardisieren
- ECMAScript wird auch mit „ES“ abgekürzt
arcade solutions ag
- ECMA International ist die Firma / Konsortium hinter ECMA
Standard
- Gründung 1961 (sic!) um Computer und Kommunikationssysteme in
Europa für Firmen zu vernetzen
- ECMA steht für «European Computer Manufacturers Association»
- ECMA ist seit Anfang in Genf (CH) beheimatet
- Unterschiedliche Standards veröffentlicht (CD Rom, CLI, FAT16, C#,
Open XML, JSON …
Wer steckt hinter ECMA Script
ECMA International
arcade solutions ag
- Brendan Eich (Netscape) entwickelte ein Skript Standard mit
Namen dem «Mocha», später «LiveScript» und schlussendlich
«JavaScript»
- 1995 Sun Microsystems & Netscape veröffentlichten
Pressemeldung für neuen Standard
- 1996 Netscape Navigator 2.0 unterstützt JavaScript
- Nach diesem Erfolg entwickelte Microsoft auch eine Client-
Skript Sprache: «JScript» (IE 3 – 1996)
- Netscape beantragte bei ECMA International eine Schaffung
Standards (ECMA-262)
- Browserkrieg: Microsoft gegen Netscape
Beide versuchten ihren Standard durchzusetzen
- Beide Browser unterstützten die minimalen ECMA Standards
köderten aber die Entwickler mit eigenen Extra Features
Geschichte von ECMA Script
ECMA International
Entstehung
‒ 1997: ECMAScript 1
‒ 1998: ECMAScript 2
‒ 1999: ECMAScript 3
‒ 200x: ECMAScript 4 -> abgebrochen
‒ 2009: ECMAScript 5 (3.1)
‒ 2011: ECMAScript 5.1
‒ 2015: ECMAScript 2015 / (ES 6)
‒ 2016: ECMAScript 2016 (ES 7)
‒ 2017?: ECMAScript 2017 (ES 8)
arcade solutions ag
Quelle: https://auth0.com/blog/the-real-story-behind-es4/
Änderungen /Verbesserungen
ECMAScript 5 (2009)
arcade solutions ag
- „Normales“ JavaScript
- Erweiterte Fehlerprüfung eingeschaltet (strict mode)
- Entschärfung unklarer Sprachkonstrukte aus ECMAScript3
- Neue Features (getter- & setter-Methoden …)
- JSON Unterstützung
- 100% Browser Support (ab 2013)
ECMAScript 5.1 (2011)
- internationalen Standard ISO/IEC 16262:2011,Version 3
Änderungen /Verbesserungen
ES 2015 (ECMAScript 6)
arcade solutions ag
- Neue Syntax für komplexe Applikationen wie Klassen und Module –
(ähnliche Terminologie wie ECMAScript 5)
- Neue Funktionalitäten in der Standard Bibliothek
- Neue Sprachbestandteile (for/if), Python angelehnte Syntax
- Codename „Harmony“
- Bis kurz vorVerabschiedung ECMAScript 6
Änderungen /Verbesserungen
ES 2016 (ES7)
arcade solutions ag
- Array.prototype.includes
> ['a', 'b', 'c'].includes('a')
true
> ['a', 'b', 'c'].includes('d')
false
- Exponenten Operator (Potenzfunktion)
x ** y
- diverse Anpassungen anGeneratoren
- Ab dieserVersion folgt nun jährlich eine ES Release
Änderungen /Verbesserungen
ES 2017 (ES8+)
arcade solutions ag
- async / await works using generators and promises
- diverse Object-Funktionen
- …
- ES Next referenziert auf zukünftigeVersion (in Bearbeitung)
Mehr Proposals als Standards (not finalized)
Kompatibilität
arcade solutions ag
Kompatibilität
ES 2016+
arcade solutions ag
Transpilers
ES6
arcade solutions ag
- Translate + Compiler =Transpiler:
- Compiler übersetzen Code einer Sprache in ein andere (Java zu
ByteCode)
- Transpiler übersetzen Code in derselben Sprache in
unterschiedliche Versionen z.B. von ES6 zu ES5
- TranspilerTools (ES6)
- Traceur (Google)
- Babel
- TypeScript (Microsoft)
Quelle: https://kangax.github.io/compat-table/es6/
Transpiler
ES5 <-> ES6
arcade solutions ag
Transpiler
ES5 <-> ES6
arcade solutions ag
BabelTranspiler
Demo
arcade solutions ag
- https://babeljs.io
TraceurTranspiler
Info
arcade solutions ag
- Google
- Node.js
- Angular2 Bestandteil
Nice to now
arcade solutions ag
- Internet MediaType: „application/ecmascript“
- Dateierweiterung „.es“
- ES NEXT! Dynamische ESVersion
- JavaScript ist eineTrademark mittlerweile von Oracle und in
Zusammenarbeit mit Mozilla Foundation
- ES6 is backward compatible with ES5, which is backward
compatible with ES3
ES6 Funktionen
Details
arcade solutions ag
- http://java.ociweb.com/mark/STLJS/ES6.pdf
Fragen oder Inputs?
Links / Quellenverweise
• https://de.wikipedia.org/wiki/JavaScript
• http://www.ecma-international.org/ecma-262/7.0/index.html
• https://github.com/tc39/ecma262/
• http://caniuse.com/#search=ecmascript
• http://es6-features.org/#Constants
• http://java.ociweb.com/mark/STLJS/ES6.pdf

Más contenido relacionado

Similar a ECMAScript TechLunch 04/2017 @arcade solutions ag

elemente websolutions - Zusammenfassung T3DD09
elemente websolutions - Zusammenfassung T3DD09elemente websolutions - Zusammenfassung T3DD09
elemente websolutions - Zusammenfassung T3DD09elemente websolutions
 
ADR Best Practices - DOAG Regio-Treffen 2010 - OPITZ CONSULTING - Christian B...
ADR Best Practices - DOAG Regio-Treffen 2010 - OPITZ CONSULTING - Christian B...ADR Best Practices - DOAG Regio-Treffen 2010 - OPITZ CONSULTING - Christian B...
ADR Best Practices - DOAG Regio-Treffen 2010 - OPITZ CONSULTING - Christian B...OPITZ CONSULTING Deutschland
 
Praktische Erfahrungen mit den kleinen SPARC S7-2 Servern
Praktische Erfahrungen mit den kleinen SPARC S7-2 ServernPraktische Erfahrungen mit den kleinen SPARC S7-2 Servern
Praktische Erfahrungen mit den kleinen SPARC S7-2 ServernJomaSoft
 
C/ C++ for Notes & Domino Developers
C/ C++ for Notes & Domino DevelopersC/ C++ for Notes & Domino Developers
C/ C++ for Notes & Domino DevelopersUlrich Krause
 
Article - JDK 8 im Fokus der Entwickler
Article - JDK 8 im Fokus der EntwicklerArticle - JDK 8 im Fokus der Entwickler
Article - JDK 8 im Fokus der EntwicklerWolfgang Weigend
 
Commercial OS Shops - Magento, OXID, xt:commerce. Evaluationskriterien für En...
Commercial OS Shops - Magento, OXID, xt:commerce. Evaluationskriterien für En...Commercial OS Shops - Magento, OXID, xt:commerce. Evaluationskriterien für En...
Commercial OS Shops - Magento, OXID, xt:commerce. Evaluationskriterien für En...Mayflower GmbH
 
IfN Studienarbeit Abschlusspres 18.9.2007
IfN Studienarbeit Abschlusspres 18.9.2007IfN Studienarbeit Abschlusspres 18.9.2007
IfN Studienarbeit Abschlusspres 18.9.2007derDoc
 
Drahtwanderung: Wir machen den NeXTen Schritt
Drahtwanderung: Wir machen den NeXTen SchrittDrahtwanderung: Wir machen den NeXTen Schritt
Drahtwanderung: Wir machen den NeXTen SchrittFalk Hartmann
 
Hands-on Workshop: API-Dokumentation mit OpenAPI / Swagger in ASP.NET Core
Hands-on Workshop: API-Dokumentation mit OpenAPI / Swagger in ASP.NET CoreHands-on Workshop: API-Dokumentation mit OpenAPI / Swagger in ASP.NET Core
Hands-on Workshop: API-Dokumentation mit OpenAPI / Swagger in ASP.NET CoreGregor Biswanger
 
Acrobat 9 Ueberblick German
Acrobat 9 Ueberblick GermanAcrobat 9 Ueberblick German
Acrobat 9 Ueberblick GermanUlrichIsermeyer
 
Atmel AVR RISC μC unter GNU/Linux programmieren
Atmel AVR RISC μC unter GNU/Linux programmierenAtmel AVR RISC μC unter GNU/Linux programmieren
Atmel AVR RISC μC unter GNU/Linux programmierenrzbrk
 
C / C++ Api for Beginners
C / C++ Api for BeginnersC / C++ Api for Beginners
C / C++ Api for BeginnersUlrich Krause
 
Die fabelhafte Welt Java(Script)-getriebener Enterprise-WebApps (mit Ext JS)
Die fabelhafte Welt Java(Script)-getriebener Enterprise-WebApps (mit Ext JS)Die fabelhafte Welt Java(Script)-getriebener Enterprise-WebApps (mit Ext JS)
Die fabelhafte Welt Java(Script)-getriebener Enterprise-WebApps (mit Ext JS)Java Usergroup Berlin-Brandenburg
 
Sicherheit, Compliance, Höchsteistung mit SPARC/Solaris
Sicherheit, Compliance, Höchsteistung mit SPARC/SolarisSicherheit, Compliance, Höchsteistung mit SPARC/Solaris
Sicherheit, Compliance, Höchsteistung mit SPARC/SolarisJomaSoft
 
TYPO3 CMS 7.5 - Die Neuerungen - pluswerk
TYPO3 CMS 7.5 - Die Neuerungen - pluswerkTYPO3 CMS 7.5 - Die Neuerungen - pluswerk
TYPO3 CMS 7.5 - Die Neuerungen - pluswerkdie.agilen GmbH
 
Ajax hands on - Refactoring Google Suggest
Ajax hands on - Refactoring Google SuggestAjax hands on - Refactoring Google Suggest
Ajax hands on - Refactoring Google SuggestBastian Feder
 
SLAC 2008 RPMs selber bauen
SLAC 2008 RPMs selber bauenSLAC 2008 RPMs selber bauen
SLAC 2008 RPMs selber bauenSchlomo Schapiro
 

Similar a ECMAScript TechLunch 04/2017 @arcade solutions ag (20)

elemente websolutions - Zusammenfassung T3DD09
elemente websolutions - Zusammenfassung T3DD09elemente websolutions - Zusammenfassung T3DD09
elemente websolutions - Zusammenfassung T3DD09
 
OpenCms 8.5 kurz vorgestellt [LinuxTag 2013]
OpenCms 8.5 kurz vorgestellt [LinuxTag 2013]OpenCms 8.5 kurz vorgestellt [LinuxTag 2013]
OpenCms 8.5 kurz vorgestellt [LinuxTag 2013]
 
ADR Best Practices - DOAG Regio-Treffen 2010 - OPITZ CONSULTING - Christian B...
ADR Best Practices - DOAG Regio-Treffen 2010 - OPITZ CONSULTING - Christian B...ADR Best Practices - DOAG Regio-Treffen 2010 - OPITZ CONSULTING - Christian B...
ADR Best Practices - DOAG Regio-Treffen 2010 - OPITZ CONSULTING - Christian B...
 
Praktische Erfahrungen mit den kleinen SPARC S7-2 Servern
Praktische Erfahrungen mit den kleinen SPARC S7-2 ServernPraktische Erfahrungen mit den kleinen SPARC S7-2 Servern
Praktische Erfahrungen mit den kleinen SPARC S7-2 Servern
 
C/ C++ for Notes & Domino Developers
C/ C++ for Notes & Domino DevelopersC/ C++ for Notes & Domino Developers
C/ C++ for Notes & Domino Developers
 
Article - JDK 8 im Fokus der Entwickler
Article - JDK 8 im Fokus der EntwicklerArticle - JDK 8 im Fokus der Entwickler
Article - JDK 8 im Fokus der Entwickler
 
Commercial OS Shops - Magento, OXID, xt:commerce. Evaluationskriterien für En...
Commercial OS Shops - Magento, OXID, xt:commerce. Evaluationskriterien für En...Commercial OS Shops - Magento, OXID, xt:commerce. Evaluationskriterien für En...
Commercial OS Shops - Magento, OXID, xt:commerce. Evaluationskriterien für En...
 
profil_2017
profil_2017profil_2017
profil_2017
 
IfN Studienarbeit Abschlusspres 18.9.2007
IfN Studienarbeit Abschlusspres 18.9.2007IfN Studienarbeit Abschlusspres 18.9.2007
IfN Studienarbeit Abschlusspres 18.9.2007
 
Drahtwanderung: Wir machen den NeXTen Schritt
Drahtwanderung: Wir machen den NeXTen SchrittDrahtwanderung: Wir machen den NeXTen Schritt
Drahtwanderung: Wir machen den NeXTen Schritt
 
Hands-on Workshop: API-Dokumentation mit OpenAPI / Swagger in ASP.NET Core
Hands-on Workshop: API-Dokumentation mit OpenAPI / Swagger in ASP.NET CoreHands-on Workshop: API-Dokumentation mit OpenAPI / Swagger in ASP.NET Core
Hands-on Workshop: API-Dokumentation mit OpenAPI / Swagger in ASP.NET Core
 
Acrobat 9 Ueberblick German
Acrobat 9 Ueberblick GermanAcrobat 9 Ueberblick German
Acrobat 9 Ueberblick German
 
Atmel AVR RISC μC unter GNU/Linux programmieren
Atmel AVR RISC μC unter GNU/Linux programmierenAtmel AVR RISC μC unter GNU/Linux programmieren
Atmel AVR RISC μC unter GNU/Linux programmieren
 
C / C++ Api for Beginners
C / C++ Api for BeginnersC / C++ Api for Beginners
C / C++ Api for Beginners
 
Vom Dokument zum Workflow
Vom Dokument zum WorkflowVom Dokument zum Workflow
Vom Dokument zum Workflow
 
Die fabelhafte Welt Java(Script)-getriebener Enterprise-WebApps (mit Ext JS)
Die fabelhafte Welt Java(Script)-getriebener Enterprise-WebApps (mit Ext JS)Die fabelhafte Welt Java(Script)-getriebener Enterprise-WebApps (mit Ext JS)
Die fabelhafte Welt Java(Script)-getriebener Enterprise-WebApps (mit Ext JS)
 
Sicherheit, Compliance, Höchsteistung mit SPARC/Solaris
Sicherheit, Compliance, Höchsteistung mit SPARC/SolarisSicherheit, Compliance, Höchsteistung mit SPARC/Solaris
Sicherheit, Compliance, Höchsteistung mit SPARC/Solaris
 
TYPO3 CMS 7.5 - Die Neuerungen - pluswerk
TYPO3 CMS 7.5 - Die Neuerungen - pluswerkTYPO3 CMS 7.5 - Die Neuerungen - pluswerk
TYPO3 CMS 7.5 - Die Neuerungen - pluswerk
 
Ajax hands on - Refactoring Google Suggest
Ajax hands on - Refactoring Google SuggestAjax hands on - Refactoring Google Suggest
Ajax hands on - Refactoring Google Suggest
 
SLAC 2008 RPMs selber bauen
SLAC 2008 RPMs selber bauenSLAC 2008 RPMs selber bauen
SLAC 2008 RPMs selber bauen
 

ECMAScript TechLunch 04/2017 @arcade solutions ag

  • 2. ‒Was ist «ECMAScript» ‒Wer steckt hinter ECMAScript? ‒ Geschichte und Entstehung ‒ ES 5 ‒ ES 2015 (ES 6) ‒ ES 2016 (ES 7) ‒ ES 2017 (ES 8) ‒Transcompiler ‒ Unterschiede derVersionen ES5 <-> ES6 ‒ Kompatibilität / Akzeptanz in Browsern ‒ Fragen & Antworten Agenda.
  • 3. Was ist ECMAScript arcade solutions ag - ECMAScriptTM ist eine Skript Sprachen Spezifikation - Standardisiert von ECMA International mit ECMA-262 & ISO/IEC 16262 - Ins Leben gerufen um verschiedene Skriptsprachen mit all ihren Dialekten wie JavaScript, JScript &ActionScript usw. zu standardisieren - ECMAScript wird auch mit „ES“ abgekürzt
  • 4. arcade solutions ag - ECMA International ist die Firma / Konsortium hinter ECMA Standard - Gründung 1961 (sic!) um Computer und Kommunikationssysteme in Europa für Firmen zu vernetzen - ECMA steht für «European Computer Manufacturers Association» - ECMA ist seit Anfang in Genf (CH) beheimatet - Unterschiedliche Standards veröffentlicht (CD Rom, CLI, FAT16, C#, Open XML, JSON … Wer steckt hinter ECMA Script ECMA International
  • 5. arcade solutions ag - Brendan Eich (Netscape) entwickelte ein Skript Standard mit Namen dem «Mocha», später «LiveScript» und schlussendlich «JavaScript» - 1995 Sun Microsystems & Netscape veröffentlichten Pressemeldung für neuen Standard - 1996 Netscape Navigator 2.0 unterstützt JavaScript - Nach diesem Erfolg entwickelte Microsoft auch eine Client- Skript Sprache: «JScript» (IE 3 – 1996) - Netscape beantragte bei ECMA International eine Schaffung Standards (ECMA-262) - Browserkrieg: Microsoft gegen Netscape Beide versuchten ihren Standard durchzusetzen - Beide Browser unterstützten die minimalen ECMA Standards köderten aber die Entwickler mit eigenen Extra Features Geschichte von ECMA Script ECMA International
  • 6. Entstehung ‒ 1997: ECMAScript 1 ‒ 1998: ECMAScript 2 ‒ 1999: ECMAScript 3 ‒ 200x: ECMAScript 4 -> abgebrochen ‒ 2009: ECMAScript 5 (3.1) ‒ 2011: ECMAScript 5.1 ‒ 2015: ECMAScript 2015 / (ES 6) ‒ 2016: ECMAScript 2016 (ES 7) ‒ 2017?: ECMAScript 2017 (ES 8) arcade solutions ag
  • 8. Änderungen /Verbesserungen ECMAScript 5 (2009) arcade solutions ag - „Normales“ JavaScript - Erweiterte Fehlerprüfung eingeschaltet (strict mode) - Entschärfung unklarer Sprachkonstrukte aus ECMAScript3 - Neue Features (getter- & setter-Methoden …) - JSON Unterstützung - 100% Browser Support (ab 2013) ECMAScript 5.1 (2011) - internationalen Standard ISO/IEC 16262:2011,Version 3
  • 9. Änderungen /Verbesserungen ES 2015 (ECMAScript 6) arcade solutions ag - Neue Syntax für komplexe Applikationen wie Klassen und Module – (ähnliche Terminologie wie ECMAScript 5) - Neue Funktionalitäten in der Standard Bibliothek - Neue Sprachbestandteile (for/if), Python angelehnte Syntax - Codename „Harmony“ - Bis kurz vorVerabschiedung ECMAScript 6
  • 10. Änderungen /Verbesserungen ES 2016 (ES7) arcade solutions ag - Array.prototype.includes > ['a', 'b', 'c'].includes('a') true > ['a', 'b', 'c'].includes('d') false - Exponenten Operator (Potenzfunktion) x ** y - diverse Anpassungen anGeneratoren - Ab dieserVersion folgt nun jährlich eine ES Release
  • 11. Änderungen /Verbesserungen ES 2017 (ES8+) arcade solutions ag - async / await works using generators and promises - diverse Object-Funktionen - … - ES Next referenziert auf zukünftigeVersion (in Bearbeitung) Mehr Proposals als Standards (not finalized)
  • 14. Transpilers ES6 arcade solutions ag - Translate + Compiler =Transpiler: - Compiler übersetzen Code einer Sprache in ein andere (Java zu ByteCode) - Transpiler übersetzen Code in derselben Sprache in unterschiedliche Versionen z.B. von ES6 zu ES5 - TranspilerTools (ES6) - Traceur (Google) - Babel - TypeScript (Microsoft) Quelle: https://kangax.github.io/compat-table/es6/
  • 18. TraceurTranspiler Info arcade solutions ag - Google - Node.js - Angular2 Bestandteil
  • 19. Nice to now arcade solutions ag - Internet MediaType: „application/ecmascript“ - Dateierweiterung „.es“ - ES NEXT! Dynamische ESVersion - JavaScript ist eineTrademark mittlerweile von Oracle und in Zusammenarbeit mit Mozilla Foundation - ES6 is backward compatible with ES5, which is backward compatible with ES3
  • 20. ES6 Funktionen Details arcade solutions ag - http://java.ociweb.com/mark/STLJS/ES6.pdf
  • 22. Links / Quellenverweise • https://de.wikipedia.org/wiki/JavaScript • http://www.ecma-international.org/ecma-262/7.0/index.html • https://github.com/tc39/ecma262/ • http://caniuse.com/#search=ecmascript • http://es6-features.org/#Constants • http://java.ociweb.com/mark/STLJS/ES6.pdf

Notas del editor

  1. Browserkriege JSCRIPT – Microsoft (um Rechtsverletzungen zu umgehen) Javascript – Netscape Actionscript – Flash von Macromedia -> Adobe
  2. https://en.wikipedia.org/wiki/List_of_Ecma_standards Ecma International is responsible for several standards, including: ECMA-6 – 7-bit Coded Character Set (based on ASCII), also approved as ISO/IEC 646[5] ECMA-35 – Character Code Structure and Extension Techniques, also approved as ISO/IEC 2022[6] ECMA-48 – Control Functions for Coded Character Sets, also approved as ISO/IEC 6429[7] ECMA-107 - FAT12/FAT16 file system ECMA-119 – CD-ROM volume and filestructure (later known as ISO 9660)[8] ECMA-130 – CD-ROM "Yellow Book" format ECMA-262 – ECMAScript Language Specification (based on JavaScript)[9] ECMA-334 – C# Language Specification[10] ECMA-335 – Common Language Infrastructure (CLI)[11] ECMA-341 – Environmental design considerations for electronic products[12] ECMA-363 – Universal 3D File Format[13] ECMA-367 – Eiffel: Analysis, design and programming Language (See Eiffel programming language)[14] ECMA-372 – C++/CLI Language Specification[15] ECMA-376 – Office Open XML (later known as ISO/IEC 29500) ECMA-377 – Holographic Versatile Disc (HVD) Recordable Cartridges[16] ECMA-378 – Read-Only Memory Holographic Versatile Disc (HVD-ROM)[17] ECMA-388 – Open XML Paper Specification[18] ECMA-402 – ECMAScript Internationalization API Specification[19] ECMA-404 – JSON[20] ECMA-408 – Dart language specification[21] ECMA-412 - Access Systems
  3. Current members include Brendan Eich (Mozilla, JavaScript inventor), Allen Wirfs-Brock (Mozilla), Dave Herman (Mozilla), Brandon Benvie (Mozilla), Mark Miller (Google), Alex Russell (Google, Dojo Toolkit), Erik Arvidsson (Google, Traceur), Domenic Denicola (Google), Luke Hoban (Microsoft), Yehuda Katz (Tilde Inc., Ember.js), Rick Waldron (Boucoup, jQuery), and many more
  4. 1 / Juni 1997 / erste Version 2 Änderungen zwecks Kompatibilität zum internationalen Standard ISO/IEC 16262 3 reguläre Ausdrücke, bessere Verarbeitung von Zeichenketten, Kontrollfluss, Fehlerbehandlung mit try/catch, bessere Fehlerbehandlung, bessere Formatierung bei der Ausgabe von Zahlen usw. 4 Wegen Uneinigkeit in Bezug auf die Zukunft der Sprache wurde die weitere Entwicklung des komplexen Entwurfes zu ECMAScript 4 eingestellt. Einige Ideen werden in ES6 wieder aufleben. https://www.ecma-international.org/ecma-262/7.0/#sec-scope
  5. ECMAScript 4 stirbt, 3.1 wird als ECMAScript 5 released 2013: Alle wichtigen Browsers sind zu 100% kompatibel mit ECMAScript 5 ECMAScript 6 wird zu ECMAScript2015 2016: Release ECMAScript 2016 2017: ECMAScript 2017 Jedes Jahr soll eine neue Version rauskommen… -> Quelle: Wikipedia
  6. - Im „strict mode“ wird eine erweiterte Fehlerprüfung eingeschaltet. - Unklare Sprachkonstrukte von ECMAScript 3 werden entschärft und neue Features wie getter- und setter-Methoden, - - Unterstützung von JSON usw. hinzugefügt
  7. Neue Syntax für komplexe Applikationen wie Klassen und Module, die aber mit ähnlicher Terminologie wie in ECMAScript 5 (strict mode) definiert werden können. Neue Sprachbestandteile wie for/of-Schleifen, teilweise an Python angelehnte Syntax usw. Der Codename lautet “Harmony” und wurde bis kurz vor Verabschiedung als „ECMAscript 6“ bezeichnet.
  8. destruktiven Zuweisungen?
  9. destruktiven Zuweisungen?
  10. http://kangax.github.io/compat-table/es2016plus/
  11. - Compilers translate code one language to another ex. Java to bytecode Transpilers translate code to the same language There are several transpilers that translate ES6 code to ES5 Traceur (Google) https://github.com/google/traceur-compiler/ Babel https://babeljs.io/ TypeScript (Microsoft) http://www.typescriptlang.org/ http://kangax.github.io/compat-table/es6/
  12. - Compilers translate code one language to another ex. Java to bytecode - Transpilers translate code to the same language There are several transpilers that translate ES6 code to ES5 Traceur (Google) Babel TypeScript (Microsoft) http://es6-features.org/#ClassDefinition
  13. http://es6-features.org/#ArrayElementFinding
  14. https://babeljs.io/ let stooges = ['Moe', 'Larry', 'Curly']; for (let stooge of stooges) { console.log(stooge); }
  15. https://github.com/google/traceur-compiler http://google.github.io/traceur-compiler/demo/repl.html# let stooges = ['Moe', 'Larry', 'Curly']; for (let stooge of stooges) { console.log(stooge); }
  16. - Im „strict mode“ wird eine erweiterte Fehlerprüfung eingeschaltet. - Unklare Sprachkonstrukte von ECMAScript 3 werden entschärft und neue Features wie getter- und setter-Methoden, - - Unterstützung von JSON usw. hinzugefügt
  17. http://java.ociweb.com/mark/STLJS/ES6.pdf