ESNext - Javascript future

micierJaraevi 501 views 8 slides Nov 16, 2016
Slide 1
Slide 1 of 8
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8

About This Presentation

Public presentation about new features of Javascript (ECMAScript). Included some links to interesting resources


Slide Content

ESNext
@zmeecer

VBScript
<div>
<%
' Grab current time from Now() function.
' An '=' sign occurring after a context switch (<%) is shorthand
' for a call to the Write() method of the Response object.
Dim timeValue = Now
%>
The time, in 24-hour format, is
<%=Hour(timeValue)%>:<%=Minute(timeValue)%>
:
<%=Second(timeValue)%>
</div>

ECMAScript
1 - Jun 97 First edition
3 - Dec 98 Added regular expressions, better string handling, new control statements,
try/catch exception handling
4 - Fight! Abandoned
5 - Dec 09 Strict Mode, JSON, etc
6 - Jun 15 ECMAScript 2015: classes, arrow functions, modules, generators,
collections, promises, proxies, string formatting
7 - Jun 16 ES2016: ** and includes
8 - Jun 17 ? SIMD, observable, properties, etc

ES4 = ActionScript
class com.example.Greeter extends MovieClip
{
public function Greeter()
{
var txtHello:TextField = this.createTextField("txtHello", 0, 0, 0, 100, 100);
txtHello.text = "Hello, world";
}
}

ES6 / ES7
http://kangax.github.io/compat-table/es6/

ES2017
●async/await functions
●Object.values() / Object.entries()
●stringPadding!!!
Draft:
●SIMD
●rest/spread properties
●global

Babel / Babili
https://github.com/babel/babili

class Mangler {
constructor(program) {
this.program = program;
}
}
new Mangler(); // without this it would just output nothing since Mangler isn't used
// ES2015+ code -> Babel -> Babili/Uglify -> Minified ES5 Code
var a=function a(b){_classCallCheck(this,a),this.program=b};new a;
// ES2015+ code -> Babili -> Minified ES2015+ Code
class a{constructor(b){this.program=b}}new a;

Result
http://stateofjs.com