Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
56-tools:javascript [2017/09/29 11:49] – [Bind] Roge | 56-tools:javascript [2018/01/20 02:59] (Version actuelle) – [références] Roge | ||
---|---|---|---|
Ligne 11: | Ligne 11: | ||
[[http:// | [[http:// | ||
+ | http:// | ||
===== ES6 ===== | ===== ES6 ===== | ||
Ligne 120: | Ligne 121: | ||
var say2 = sayHello2(' | var say2 = sayHello2(' | ||
say2(); // logs "Hello Bob" | say2(); // logs "Hello Bob" | ||
+ | </ | ||
+ | |||
+ | |||
+ | < | ||
+ | // closure example | ||
+ | function makeAdder(x) { | ||
+ | return function(y) { | ||
+ | return x + y; | ||
+ | }; | ||
+ | } | ||
+ | |||
+ | var add5 = makeAdder(5); | ||
+ | var add100 = makeAdder(100); | ||
+ | |||
+ | console.log(add5(2)); | ||
+ | console.log(add100(2)); | ||
+ | </ | ||
+ | |||
+ | Closure in loop: | ||
+ | < | ||
+ | for ( var d = 0; d < 3; d++ ) (function(d){ | ||
+ | | ||
+ | | ||
+ | | ||
+ | }, d * 200); | ||
+ | })(d); | ||
</ | </ | ||
Ligne 161: | Ligne 188: | ||
http:// | http:// | ||
+ | ===== Public & Private methods ===== | ||
+ | |||
+ | < | ||
+ | var myObject = (function() { | ||
+ | var privateVar = ''; | ||
+ | |||
+ | function privateMethod () { | ||
+ | // ... | ||
+ | } | ||
+ | |||
+ | return { // public interface | ||
+ | publicMethod: | ||
+ | // all private members are accesible here | ||
+ | }, | ||
+ | }; | ||
+ | })(); | ||
+ | </ | ||
+ | |||
===== Privileged method ===== | ===== Privileged method ===== | ||
+ | |||
<code javascript> | <code javascript> | ||
Ligne 340: | Ligne 386: | ||
[[http:// | [[http:// | ||
+ | [[http:// | ||
===== Tests scripts web: jsbin ===== | ===== Tests scripts web: jsbin ===== | ||