!! GROS PLAN SUR LES OBJETS !!

!! GROS PLAN SUR LES SCOPES !!

LES CLOSURES :

C'est une function qui a enfermé avec elle des variables qui lui sont externes, elle a enfermé des variables d'une function parent.

En gros , une fois que le contexte d’exécution d'une function a disparu les variables créent dans ce contexte restent accessible à une autre function ( function fille par exemple ) La particularité des closures c'est de capturer l’accès a des variables de scope parents même si ce scope a disparu du contexte d'exécution

Voir partie sur les contextes d'exécution plus bas!

LES IIFES :

"Immediately Invoked Functions"

On écrit la déclaration de la function et on l’exécute immédiatement, c'est une function qui s'appelle elle même.

(function iifes () {
	//Do some code...
}) ();

ARROW FUNCTIONS :

Permettent une syntaxe plus propre, plus rapide et fixent la valeur du THIS.

argument => value;
const me = {
	name : "Cyril", 
	presentFriend : function (friend) {
			console.log("tu connais " + friend + " ?";
	}
}

//Becomes : 

const me = {
	name : "Cyril", 
	presentFriend : (friend) => "tu connais " + friend + "?";
}