Nous recrutons: Tu es un IT qui souhaite travailler en Node, Python, Serverless et Cloud dans l'IA ?
Node.js-1

Les nouveautés de la version v6 de NodeJS

Développement d'applications Web et Mobile

Les nouveautés de la version v6 de NodeJS

Node.js est sortie il y a quelques mois, Young App a eu l’occasion de pouvoir tester cette nouvelle version. Des modifications et des apports sont à prendre en compte avec considération. Voici un retour d’expériences sur ce Framework chez Young App.

 

Amélioration des performances

Amélioration de la sécurité

Nouveaux ES6 Caractéristiques

Comme à son habitude, dans chaque version des nouvelles fonctionnalités sont prises en compte côté ES6, dans cette version, nous pouvons noté des ajouts importants et très utiles.

Paramètres de fonctions par défaut :

function multiply(a, b = 1) {  
  return a * b
}

multiply(5) // 5  

Plus d’informations sur la documentation de Mozilla.

Rest parameters :

function fun1(...theArgs) {  
  console.log(theArgs.length)
}

fun1()  // 0  
fun1(5) // 1  
fun1(5, 6, 7) // 3  

Spread Operator :

// before the spread operator
function myFunction(x, y, z) { }  
var args = [0, 1, 2]  
myFunction.apply(null, args)

// with the spread operator
function myFunction(x, y, z) { }  
var args = [0, 1, 2]  
myFunction(...args) 

Destructuring :

var x = [1, 2, 3, 4, 5]  
var [y, z] = x  
console.log(y) // 1  
console.log(z) // 2  

new.target :

function Foo() {  
  if (!new.target) throw new Error('Foo() must be called with new')
  console.log('Foo instantiated with new')
}

Foo() // throws "Foo() must be called with new"  
new Foo() // logs "Foo instantiated with new"

Proxy :

var handler = {  
    get: function(target, name){
        return name in target ? target[name] : 37
    }
};

var p = new Proxy({}, handler)  
p.a = 1  
p.b = undefined

console.log(p.a, p.b) // 1, undefined  
console.log('c' in p, p.c) // false, 37  

Symbols :

Symbol("foo") === Symbol("foo"); // false  

D’autres fonctionnalités utiles. L’import et l’export sont toujours attendus avec impatience dans les prochaines versions, afin de vraiment prendre une autre dimension et se séparer des outils comme Babel ou Traceur.js