SlideShare a Scribd company logo
Living in harmony
A brief intro to ES6
Maryland.JS Meetup
08/27/2014
Who am I?
JONESY ROCKIN’
THE HIGH SOCKS!
ECMA-what?
A (very) brief history…
JAVASCRIPT CREATED
ORIGINALLY NAMED MOCHA, THEN LIVESCRIPT
NETSCAPE NAVIGATOR 2.0
SUPPORT FOR JAVASCRIPT
1995
1996
SPEC WORK BEGINS
ECMA-262 & ECMASCRIPT BORN
1ST EDITION1997
2ND EDITION1998
3RD EDITION
THE FOUNDATION OF MODERN JAVASCRIPT
1999
5TH EDITION
BACKWARDS-COMPAT, STRICT MODE, JSON
2009
6TH EDITION (HARMONY)
FEATURE FREEZE 08/2014, PUBLISH 06/2015
NOW
7TH EDITION
VERY EARLY STAGES, DISCUSSIONS
…
1996
Features
So. Many. Features.
Block-level scoping
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let
function demoLet() {
{
var a = 2;
let b = 2;
}
console.log(a); // 2
console.log(b); // ReferenceError
}
for…of
let arr = ["one", "two", "three"];
for(let i in arr) {
// logs keys: 0, 1, 2
console.log(i);
}
for(let i of arr) {
// logs values: ”one", "two", "three"
console.log(i);
}
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for...of
Arrow function
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/arrow_functions
function demoArrowFunction2() {
var squared = x => x * x;
console.log(squared(7)); // 49
}
Arrow function
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/arrow_functions
function demoArrowFunction1() {
function Item() {
this.y = 2;
setTimeout(function() {
console.log(this.y); // undefined
}, 500);
setTimeout(() => {
console.log(this.y); // 2
}, 1000);
}
var item = new Item();
}
Default parameters
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/default_parameters
function demoDefaultParams() {
function personalInfo(age, firstName = "John") {
// ooh string templates too!
return `${firstName} ${lastName} is ${age}`;
}
console.log(personalInfo(34, "Rich")); // Rich is 34
console.log(personalInfo(100)); // John is 100
}
Spread operator
function demoSpread() {
// array literals
var fruits = ["apples", "oranges"];
var shoppingList = ["bananas", ...fruits];
console.log(shoppingList); // ["bananas", "apples", "oranges"]
// function arguments
function trySpread(one, two) {
console.log(one, two); // ["apples", "oranges"]
}
trySpread(...fruits);
}
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Spread_operator
Destructuring
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment
function demoDestructure() {
// object destructuring
let someObj = {
x: 20,
y: 30
};
let {x, y} = someObj;
console.log(x); // 20
console.log(y); // 30
}
Destructuring assignment
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment
function demoDestructure() {
// array desctructuring
function f() {
return [1, 2, 3];
}
let [first,,third] = f(); // ignore 2nd element
console.log(first); // 1
console.log(third); // 3
}
Comprehensions
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Array_comprehensions
function demoComprehensions() {
var letters = ["A", "B", "C"];
var numbers = [1, 2, 3];
// similar to letters.map
var lowerCased = [for (letter of letters) letter.toLowerCase()];
console.log(lowerCased); // ["a", "b", "c"]
// similar to letters.filter
var filtered = [for (letter of letters) if (letter !== "A") letter];
console.log(filtered); // ["B", "C"]
// multiple arrays
var combined = [for (l of letters) for (n of numbers) l + n];
console.log(combined); // ["A1", "A2", "A3", "B1", ...]
}
Template strings
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings
function demoTemplateStrings() {
var x = 1;
var y = 1;
console.log(`x + y = ${x + y}`); // x + y = 2
}
Collections: Set
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Set
function demoSet() {
var arrayWithDupes = [1, 1, 2, 3, 3];
var deDuped = new Set(arrayWithDupes);
console.log(deDuped); // [1, 2, 3]
console.log(deDuped.has(8)); // false
}
Collections: Map
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map
function demoMap() {
var myMap = new Map();
var someObj = {};
myMap.set(50, "int");
myMap.set("test", "string");
myMap.set(someObj, "{}");
console.log(myMap.get(50)); // "int"
console.log(myMap.get("test")); // "string"
console.log(myMap.get(someObj)); // "{}"
}
Generators
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/function*
function demoGenerators() {
function* fibonacci() {
var fn1 = 1, fn2 = 1;
while(1) {
var current = fn2;
fn2 = fn1;
fn1 = fn1 + current;
yield current;
}
}
var sequence = fibonacci();
console.log(sequence.next().value); // 1
console.log(sequence.next().value); // 1
console.log(sequence.next().value); // 2
console.log(sequence.next().value); // 3
}
Classes
class Vehicle {
constructor(name) {
this.name = name;
this.hasWings = false;
}
canFly() {
return this.hasWings;
}
}
}
http://people.mozilla.org/~jorendorff/es6-draft.html#sec-class-definitions
Classes
class Car extends Vehicle {
constructor(name, make, model) {
super(name);
this.hasWings = false;
this.make = make;
this.model = model;
}
}
var myCar = new Car("A-Team Van", "GMC", "Vandura");
console.log(myCar.canFly()); // false
console.log(myCar.make); // "GMC"
http://people.mozilla.org/~jorendorff/es6-draft.html#sec-class-definitions
Classes
class Plane extends Vehicle {
constructor(name) {
super(name);
this.hasWings = true;
}
}
var myPlane = new Plane("The Wright Flyer");
console.log(myPlane.canFly()); // true
http://people.mozilla.org/~jorendorff/es6-draft.html#sec-class-definitions
Modules
// lib/math.js
export function sum(x, y) {
return x + y;
}
// app.js (using module)
module math from "lib/math";
console.log(math.sum(2, 3)); // 5
// app.js (using import)
import sum from "lib/math";
console.log(sum(2, 3)); // 5
http://people.mozilla.org/~jorendorff/es6-draft.html#sec-modules
…and all this jazz
• Promises
• New Array functions
• New Math functions
• New Number functions
• New Object functions
• WeakMap
• WeakSet
• Binary and octal literals
• Proxy
• Symbol
• Full Unicode
• …
Resources
Go on, get!
Light reading
• ECMAScript 6 Draft Spec
• ECMAScript Discussion Archives
• ECMAScript 6 Resources For The Curious JavaScripter
• List of ES6 features
• ECMAScript 6 Support in Mozilla
For your viewing pleasure
• egghead.io ES6 videos
• ECMAScript 6 on YouTube
ECMAScript 6 compatibility table
Traceur compiler
grunt-traceur-latest
http://www.es6fiddle.net/
This talk and code
https://github.com/richleland/es6-talk
Follow me
richleland on github/twitter
THANK YOU!

More Related Content

Similar to Living in harmony - a brief into to ES6

Modern frontend in react.js
Modern frontend in react.jsModern frontend in react.js
Modern frontend in react.js
Abdulsattar Mohammed
 
EcmaScript 6 - The future is here
EcmaScript 6 - The future is hereEcmaScript 6 - The future is here
EcmaScript 6 - The future is here
Sebastiano Armeli
 
6 new ES6 features
6 new ES6 features6 new ES6 features
6 new ES6 features
Kyle Dorman
 
The State of JavaScript (2015)
The State of JavaScript (2015)The State of JavaScript (2015)
The State of JavaScript (2015)
Domenic Denicola
 
Modern JS with ES6
Modern JS with ES6Modern JS with ES6
Modern JS with ES6
Rifatul Islam
 
JavaScript Growing Up
JavaScript Growing UpJavaScript Growing Up
JavaScript Growing Up
David Padbury
 
MiamiJS - The Future of JavaScript
MiamiJS - The Future of JavaScriptMiamiJS - The Future of JavaScript
MiamiJS - The Future of JavaScript
Caridy Patino
 
AkJS Meetup - ES6++
AkJS Meetup -  ES6++AkJS Meetup -  ES6++
AkJS Meetup - ES6++
Isaac Johnston
 
Workshop 10: ECMAScript 6
Workshop 10: ECMAScript 6Workshop 10: ECMAScript 6
Workshop 10: ECMAScript 6
Visual Engineering
 
FalsyValues. Dmitry Soshnikov - ECMAScript 6
FalsyValues. Dmitry Soshnikov - ECMAScript 6FalsyValues. Dmitry Soshnikov - ECMAScript 6
FalsyValues. Dmitry Soshnikov - ECMAScript 6
Dmitry Soshnikov
 
Javascript basics
Javascript basicsJavascript basics
Javascript basics
Fin Chen
 
ClojureScript loves React, DomCode May 26 2015
ClojureScript loves React, DomCode May 26 2015ClojureScript loves React, DomCode May 26 2015
ClojureScript loves React, DomCode May 26 2015
Michiel Borkent
 
Fitc whats new in es6 for web devs
Fitc   whats new in es6 for web devsFitc   whats new in es6 for web devs
Fitc whats new in es6 for web devs
FITC
 
Explaining ES6: JavaScript History and What is to Come
Explaining ES6: JavaScript History and What is to ComeExplaining ES6: JavaScript History and What is to Come
Explaining ES6: JavaScript History and What is to Come
Cory Forsyth
 
JavaScript - Agora nervoso
JavaScript - Agora nervosoJavaScript - Agora nervoso
JavaScript - Agora nervoso
Luis Vendrame
 
JavaScript Core
JavaScript CoreJavaScript Core
JavaScript Core
François Sarradin
 
What's New in ES6 for Web Devs
What's New in ES6 for Web DevsWhat's New in ES6 for Web Devs
What's New in ES6 for Web Devs
Rami Sayar
 
ECMAScript2015
ECMAScript2015ECMAScript2015
ECMAScript2015
qmmr
 
The mighty js_function
The mighty js_functionThe mighty js_function
The mighty js_function
timotheeg
 
Gdc09 Minigames
Gdc09 MinigamesGdc09 Minigames
Gdc09 Minigames
Susan Gold
 

Similar to Living in harmony - a brief into to ES6 (20)

Modern frontend in react.js
Modern frontend in react.jsModern frontend in react.js
Modern frontend in react.js
 
EcmaScript 6 - The future is here
EcmaScript 6 - The future is hereEcmaScript 6 - The future is here
EcmaScript 6 - The future is here
 
6 new ES6 features
6 new ES6 features6 new ES6 features
6 new ES6 features
 
The State of JavaScript (2015)
The State of JavaScript (2015)The State of JavaScript (2015)
The State of JavaScript (2015)
 
Modern JS with ES6
Modern JS with ES6Modern JS with ES6
Modern JS with ES6
 
JavaScript Growing Up
JavaScript Growing UpJavaScript Growing Up
JavaScript Growing Up
 
MiamiJS - The Future of JavaScript
MiamiJS - The Future of JavaScriptMiamiJS - The Future of JavaScript
MiamiJS - The Future of JavaScript
 
AkJS Meetup - ES6++
AkJS Meetup -  ES6++AkJS Meetup -  ES6++
AkJS Meetup - ES6++
 
Workshop 10: ECMAScript 6
Workshop 10: ECMAScript 6Workshop 10: ECMAScript 6
Workshop 10: ECMAScript 6
 
FalsyValues. Dmitry Soshnikov - ECMAScript 6
FalsyValues. Dmitry Soshnikov - ECMAScript 6FalsyValues. Dmitry Soshnikov - ECMAScript 6
FalsyValues. Dmitry Soshnikov - ECMAScript 6
 
Javascript basics
Javascript basicsJavascript basics
Javascript basics
 
ClojureScript loves React, DomCode May 26 2015
ClojureScript loves React, DomCode May 26 2015ClojureScript loves React, DomCode May 26 2015
ClojureScript loves React, DomCode May 26 2015
 
Fitc whats new in es6 for web devs
Fitc   whats new in es6 for web devsFitc   whats new in es6 for web devs
Fitc whats new in es6 for web devs
 
Explaining ES6: JavaScript History and What is to Come
Explaining ES6: JavaScript History and What is to ComeExplaining ES6: JavaScript History and What is to Come
Explaining ES6: JavaScript History and What is to Come
 
JavaScript - Agora nervoso
JavaScript - Agora nervosoJavaScript - Agora nervoso
JavaScript - Agora nervoso
 
JavaScript Core
JavaScript CoreJavaScript Core
JavaScript Core
 
What's New in ES6 for Web Devs
What's New in ES6 for Web DevsWhat's New in ES6 for Web Devs
What's New in ES6 for Web Devs
 
ECMAScript2015
ECMAScript2015ECMAScript2015
ECMAScript2015
 
The mighty js_function
The mighty js_functionThe mighty js_function
The mighty js_function
 
Gdc09 Minigames
Gdc09 MinigamesGdc09 Minigames
Gdc09 Minigames
 

More from Richard Leland

Celery: The Distributed Task Queue
Celery: The Distributed Task QueueCelery: The Distributed Task Queue
Celery: The Distributed Task Queue
Richard Leland
 
django-district October
django-district Octoberdjango-district October
django-district October
Richard Leland
 
Django at the Disco
Django at the DiscoDjango at the Disco
Django at the Disco
Richard Leland
 
Django at the Disco
Django at the DiscoDjango at the Disco
Django at the Disco
Richard Leland
 
Django at the Disco
Django at the DiscoDjango at the Disco
Django at the Disco
Richard Leland
 
Django at the Disco
Django at the DiscoDjango at the Disco
Django at the Disco
Richard Leland
 
Django at the Disco
Django at the DiscoDjango at the Disco
Django at the Disco
Richard Leland
 
Django District April
Django District AprilDjango District April
Django District April
Richard Leland
 

More from Richard Leland (8)

Celery: The Distributed Task Queue
Celery: The Distributed Task QueueCelery: The Distributed Task Queue
Celery: The Distributed Task Queue
 
django-district October
django-district Octoberdjango-district October
django-district October
 
Django at the Disco
Django at the DiscoDjango at the Disco
Django at the Disco
 
Django at the Disco
Django at the DiscoDjango at the Disco
Django at the Disco
 
Django at the Disco
Django at the DiscoDjango at the Disco
Django at the Disco
 
Django at the Disco
Django at the DiscoDjango at the Disco
Django at the Disco
 
Django at the Disco
Django at the DiscoDjango at the Disco
Django at the Disco
 
Django District April
Django District AprilDjango District April
Django District April
 

Recently uploaded

Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
IJECEIAES
 
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressionsKuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
Victor Morales
 
Eric Nizeyimana's document 2006 from gicumbi to ttc nyamata handball play
Eric Nizeyimana's document 2006 from gicumbi to ttc nyamata handball playEric Nizeyimana's document 2006 from gicumbi to ttc nyamata handball play
Eric Nizeyimana's document 2006 from gicumbi to ttc nyamata handball play
enizeyimana36
 
International Conference on NLP, Artificial Intelligence, Machine Learning an...
International Conference on NLP, Artificial Intelligence, Machine Learning an...International Conference on NLP, Artificial Intelligence, Machine Learning an...
International Conference on NLP, Artificial Intelligence, Machine Learning an...
gerogepatton
 
New techniques for characterising damage in rock slopes.pdf
New techniques for characterising damage in rock slopes.pdfNew techniques for characterising damage in rock slopes.pdf
New techniques for characterising damage in rock slopes.pdf
wisnuprabawa3
 
TIME DIVISION MULTIPLEXING TECHNIQUE FOR COMMUNICATION SYSTEM
TIME DIVISION MULTIPLEXING TECHNIQUE FOR COMMUNICATION SYSTEMTIME DIVISION MULTIPLEXING TECHNIQUE FOR COMMUNICATION SYSTEM
TIME DIVISION MULTIPLEXING TECHNIQUE FOR COMMUNICATION SYSTEM
HODECEDSIET
 
basic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdfbasic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdf
NidhalKahouli2
 
22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt
KrishnaveniKrishnara1
 
132/33KV substation case study Presentation
132/33KV substation case study Presentation132/33KV substation case study Presentation
132/33KV substation case study Presentation
kandramariana6
 
Generative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of contentGenerative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of content
Hitesh Mohapatra
 
Literature Review Basics and Understanding Reference Management.pptx
Literature Review Basics and Understanding Reference Management.pptxLiterature Review Basics and Understanding Reference Management.pptx
Literature Review Basics and Understanding Reference Management.pptx
Dr Ramhari Poudyal
 
Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...
IJECEIAES
 
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODELDEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
gerogepatton
 
官方认证美国密歇根州立大学毕业证学位证书原版一模一样
官方认证美国密歇根州立大学毕业证学位证书原版一模一样官方认证美国密歇根州立大学毕业证学位证书原版一模一样
官方认证美国密歇根州立大学毕业证学位证书原版一模一样
171ticu
 
Understanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine LearningUnderstanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine Learning
SUTEJAS
 
A SYSTEMATIC RISK ASSESSMENT APPROACH FOR SECURING THE SMART IRRIGATION SYSTEMS
A SYSTEMATIC RISK ASSESSMENT APPROACH FOR SECURING THE SMART IRRIGATION SYSTEMSA SYSTEMATIC RISK ASSESSMENT APPROACH FOR SECURING THE SMART IRRIGATION SYSTEMS
A SYSTEMATIC RISK ASSESSMENT APPROACH FOR SECURING THE SMART IRRIGATION SYSTEMS
IJNSA Journal
 
Recycled Concrete Aggregate in Construction Part II
Recycled Concrete Aggregate in Construction Part IIRecycled Concrete Aggregate in Construction Part II
Recycled Concrete Aggregate in Construction Part II
Aditya Rajan Patra
 
ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024
Rahul
 
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
ihlasbinance2003
 
Embedded machine learning-based road conditions and driving behavior monitoring
Embedded machine learning-based road conditions and driving behavior monitoringEmbedded machine learning-based road conditions and driving behavior monitoring
Embedded machine learning-based road conditions and driving behavior monitoring
IJECEIAES
 

Recently uploaded (20)

Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
Electric vehicle and photovoltaic advanced roles in enhancing the financial p...
 
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressionsKuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
KuberTENes Birthday Bash Guadalajara - K8sGPT first impressions
 
Eric Nizeyimana's document 2006 from gicumbi to ttc nyamata handball play
Eric Nizeyimana's document 2006 from gicumbi to ttc nyamata handball playEric Nizeyimana's document 2006 from gicumbi to ttc nyamata handball play
Eric Nizeyimana's document 2006 from gicumbi to ttc nyamata handball play
 
International Conference on NLP, Artificial Intelligence, Machine Learning an...
International Conference on NLP, Artificial Intelligence, Machine Learning an...International Conference on NLP, Artificial Intelligence, Machine Learning an...
International Conference on NLP, Artificial Intelligence, Machine Learning an...
 
New techniques for characterising damage in rock slopes.pdf
New techniques for characterising damage in rock slopes.pdfNew techniques for characterising damage in rock slopes.pdf
New techniques for characterising damage in rock slopes.pdf
 
TIME DIVISION MULTIPLEXING TECHNIQUE FOR COMMUNICATION SYSTEM
TIME DIVISION MULTIPLEXING TECHNIQUE FOR COMMUNICATION SYSTEMTIME DIVISION MULTIPLEXING TECHNIQUE FOR COMMUNICATION SYSTEM
TIME DIVISION MULTIPLEXING TECHNIQUE FOR COMMUNICATION SYSTEM
 
basic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdfbasic-wireline-operations-course-mahmoud-f-radwan.pdf
basic-wireline-operations-course-mahmoud-f-radwan.pdf
 
22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt22CYT12-Unit-V-E Waste and its Management.ppt
22CYT12-Unit-V-E Waste and its Management.ppt
 
132/33KV substation case study Presentation
132/33KV substation case study Presentation132/33KV substation case study Presentation
132/33KV substation case study Presentation
 
Generative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of contentGenerative AI leverages algorithms to create various forms of content
Generative AI leverages algorithms to create various forms of content
 
Literature Review Basics and Understanding Reference Management.pptx
Literature Review Basics and Understanding Reference Management.pptxLiterature Review Basics and Understanding Reference Management.pptx
Literature Review Basics and Understanding Reference Management.pptx
 
Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...Advanced control scheme of doubly fed induction generator for wind turbine us...
Advanced control scheme of doubly fed induction generator for wind turbine us...
 
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODELDEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
DEEP LEARNING FOR SMART GRID INTRUSION DETECTION: A HYBRID CNN-LSTM-BASED MODEL
 
官方认证美国密歇根州立大学毕业证学位证书原版一模一样
官方认证美国密歇根州立大学毕业证学位证书原版一模一样官方认证美国密歇根州立大学毕业证学位证书原版一模一样
官方认证美国密歇根州立大学毕业证学位证书原版一模一样
 
Understanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine LearningUnderstanding Inductive Bias in Machine Learning
Understanding Inductive Bias in Machine Learning
 
A SYSTEMATIC RISK ASSESSMENT APPROACH FOR SECURING THE SMART IRRIGATION SYSTEMS
A SYSTEMATIC RISK ASSESSMENT APPROACH FOR SECURING THE SMART IRRIGATION SYSTEMSA SYSTEMATIC RISK ASSESSMENT APPROACH FOR SECURING THE SMART IRRIGATION SYSTEMS
A SYSTEMATIC RISK ASSESSMENT APPROACH FOR SECURING THE SMART IRRIGATION SYSTEMS
 
Recycled Concrete Aggregate in Construction Part II
Recycled Concrete Aggregate in Construction Part IIRecycled Concrete Aggregate in Construction Part II
Recycled Concrete Aggregate in Construction Part II
 
ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024ACEP Magazine edition 4th launched on 05.06.2024
ACEP Magazine edition 4th launched on 05.06.2024
 
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
5214-1693458878915-Unit 6 2023 to 2024 academic year assignment (AutoRecovere...
 
Embedded machine learning-based road conditions and driving behavior monitoring
Embedded machine learning-based road conditions and driving behavior monitoringEmbedded machine learning-based road conditions and driving behavior monitoring
Embedded machine learning-based road conditions and driving behavior monitoring
 

Living in harmony - a brief into to ES6

Editor's Notes

  1. whirlwind tour of ES6 - history, some of the features, resources to get you going before I jump into things…
  2. Based on my gravatar, I’m a super mysterious dude (who wears fingerless gloves)!
  3. Except I’m not. I’m a husband, father of super-awesome twins
  4. Huge Orioles fan
  5. I work here at Message Systems where we use AngularJS and Node.js daily official role: lead software eng
  6. Unofficial role: defeat these guys at ping pong Enough about me…
  7. quick rundown of the history of ECMA script - past, present, future
  8. European Computer Manufacturers Association —> ecma international 4th edition started in 2000, abandoned in 2003 Sources: http://en.wikipedia.org/wiki/Ecma_International, http://ejohn.org/blog/ecmascript-5-strict-mode-json-and-more/, https://twitter.com/awbjs/status/474662357516689410, https://www.w3.org/community/webed/wiki/A_Short_History_of_JavaScript
  9. Let’s dive in to the features
  10. scoping in JS is.. interesting
  11. iterate over values can also be achieved with forEach
  12. no need for boilerplate anon functions using parameters
  13. no more self = this (or that = this) no params or params, up to you
  14. coming from other languages like Python - not having this sucks!
  15. expansion of multiple arguments
  16. xxx
  17. xxx
  18. xxx
  19. xxx
  20. xxx
  21. xxx
  22. xxx
  23. xxx
  24. xxx
  25. xxx
  26. xxx
  27. bullet points - other items
  28. xxx
  29. tons of resources - search google for es6 resources
  30. compilers that convert ES6 to ES5
  31. xxx
  32. xxx