Nouvelle version de javascript !== nouveau language
Version supportée dans les navigateurs : ES 5.1
Support partiel dans Chrome & Firefox (ne sera jamais supporté apar les anciens navigateurs)
car on peut transpiler
\tʁɑ̃s.paj.lœʁ\ nom commun masculin
(Anglicisme informatique) Logiciel traduisant du code d’un langage à un autre.
- compilateur source à source
\tʁɑ̃s.pi.le\ verbe du 1er groupe (conjugaison) transitif
Convertir du code d’un langage à un autre.
source : Wikitionary
arrow functions
$('button').on('click', (event)=>{
console.log(this)
});
Equivalent à
$('button').on('click', function(event){
console.log(this)
}.bind(this));
Objects literals
var me = {
hobby: 'raspberry',
say(){
console.log('I like '+this.hobby)
}
}
var foo = "variables";
var template = `Je suis un template, avec un backtick
et non pas une apostrophe, je peux tenir sur plusieurs
lignes et aussicontenir des ${foo} !`;
destructuring
var [a, b] = [1, 2];
a === 1
b === 2
var {foo, bar} = {foo : 'stuff', bar: 'things' };
foo === 'stuff'
bar === 'things'
var {foo, bar} = { bar: 'things' };
foo === undefined
bar === 'things'
function hello(person: 'you'){
console.log('hello '+person);
}
hello('Tom'); //hello Tom
hello(): // hello you
local scope
let
is the new var
if(something === true) {
let a = 2;
}
console.log(a); //undefined
et pleins d'autres choses ! Cette prez n'est pas exhaustive !
Pour en savoir plus : ES6 CheatShet Pour tester facilement : Babel - try it out