var gulp =require('gulp'), babel =require('gulp-babel')gulp.task('build',function () {returngulp.src('src/app.js').pipe(babel()).pipe(gulp.dest('build'))})
Default Parameters in ES6
varlink=function(height =50, color ='red', url ='http://azat.co') {...}
Template Literals in ES6
var name =`Your name is ${first}${last}.`var url =`http://localhost:3000/api/messages/${id}`
Multi-line Strings in ES6
var roadPoem =`Then took the other, as just as fair, And having perhaps the better claim Because it was grassy and wanted wear, Though as for that the passing there Had worn them really about the same,`var fourAgreements =`You have the right to be you. You can only be you when you do your best.`
Destructuring Assignment in ES6
var { house, mouse} =$('body').data() // we'll get house and mouse variablesvar {json} =require('body-parser')var {username, password} =req.bodyvar [col1, col2] =$('.column'), [line1, line2, line3,, line5] =file.split('\n')
var ids = ['5632953c4e345e145fdf2df8','563295464e345e145fdf2df9']var messages =ids.map(value =>`ID is ${value}`) // implicit return
var ids = ['5632953c4e345e145fdf2df8','563295464e345e145fdf2df9']var messages =ids.map((value, index, list) =>`ID of ${index} element is ${value} `) // implicit return
Promises in ES6
var wait1000 =newPromise((resolve, reject)=> {setTimeout(resolve,1000)}).then(()=> {console.log('Yay!')})
functioncalculateTotalAmount (vip) {var amount =0// probably should also be let, but you can mix var and letif (vip) {let amount =1// first amount is still 0 } { // more crazy blocks!let amount =100// first amount is still 0 {let amount =1000// first amount is still 0 } } return amount}console.log(calculateTotalAmount(true))