Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Modeler   Code  
»áÔ±   
 
   
 
 
     
   
 ¶©ÔÄ
  ¾èÖú
È«Ãæ½âÎöECMAScript 6Ä£¿éϵͳ
 
×÷ÕߣºRavi Kiran À´Ô´£ºdotnetcurry.com ·¢²¼ÓÚ 2015-05-05
  2792  次浏览      27
 

ÕªÒª£ºÄ£¿é»¯¶ÔÈκδóÐÍÓ¦ÓÃÀ´ËµÊ®·Ö±ØÒª£¬ES6ÃÖ²¹ÁËJavaScriptȱÉÙ¶ÔÄ£¿éÖ§³ÖµÄÒź¶¡£ä¯ÀÀÆ÷Ëä¶ÔES6Ä£¿é»¯Ö§³Ö»¹²»¹»£¬µ«¿ª·¢Õß¿ÉÒÔ½èÖú±àÒëÆ÷½«ES6Ä£¿éת»»³ÉES5¡£±¾ÎĽ«ÏµÍ³½²½âES6Ä£¿éϵͳËùÌṩµÄ¸÷ÖÖ±àÂë·½·¨¡£

¡¾±àÕß°´¡¿ÔÚÈκÎÒ»¸ö´óÐÍÓ¦ÓÃÖÐÄ£¿é»¯ÊǺܳ£¼ûµÄ¡£ES6µÄÄ£¿éΪJavaScriptÌṩÁËÕâ¸öÌØÐÔ£¬²¢ÇÒΪÕâЩģ¿éÌṩÁËÐí¶àÑ¡Ôñ·½·¨À´µ¼³öºÍÒýÈë¶ÔÏó¡£Ravi Kiran ÔÚ¡¶Modules in ECMAScript 6 (ES6)¡·Ò»ÎÄÖÐÖ÷ÒªÌÖÂÛÁËES6Ä£¿éϵͳ¡£ÒÔÏÂΪ¸ÃÎÄÕµļòÒëÄÚÈÝ£º

ÎÞÂÛʹÓúÎÖÖ±à³ÌÓïÑÔ¿ª·¢´óÐÍÓ¦Óã¬×î¹Ø¼üµÄÌØÐÔ¾ÍÊÇ´úÂëÄ£¿é»¯¡£Õâ¸ö¸ÅÄîÔÚ²»Í¬µÄ±à³ÌÓïÑÔÀïÓÐ×Ų»Í¬µÄÃüÃû£¬ÔÚCÀïΪͷ²¿Îļþ£¬C++ºÍC#ÀïΪÃüÃû¿Õ¼ä£¬JavaÖÐΪ°ü£¬Ãû³Æ²»Ò»Ñùµ«½â¾öµÄÊÇͬһÎÊÌâ¡£ÕýÈç¡¶ ECMAScript 6 ¨C New language improvements in JavaScript¡·ÏµÁÐÎÄÕÂÖеÚһƪËùÌáµ½µÄÄÇÑù£¬×î³õJavaScript²¢²»ÊÇÓÃÀ´±àд´óÁ¿´úÂëµÄ£¬±ÈÈç´´½¨´óÐÍ¿ò¼Ü¡¢AppÓ¦Óõȡ£¾ÍÔÚÎÒÃÇÒòΪJavaScriptȱÉÙ¶ÔÄ£¿éµÄÖ§³Ö¶ø±àд´óÁ¿´úÂëʱ£¬¿ªÔ´¿ª·¢ÕßÌá³öÁËһЩ±ê×¼£¬ÈçCommoneJsÄ£¿éÄ£ÐÍ¡¢Ò첽ģ¿é¶¨Ò壨AMD£©ÒÔ¼°Ò»Ð©¿â£¬À´ÊµÏÖÄ£¿é»¯¡£ÔÚ¹ýÈ¥¼¸ÄêÀï,ÕâЩ¿â»ñµÃÁ˹㷺¹Ø×¢£¬²¢³É¹¦Ó¦Óõ½¶à¸öÆóÒµ¹æÄ£¼¶µÄÓ¦ÓóÌÐòÖС£

ES6ΪJavaScript´øÀ´ÁËÄ£¿éÌØÐÔ¡£ä¯ÀÀÆ÷ʵÏÖÕâÒ»ÌØÐÔ»¹ÐèÒªÒ»¶Îʱ¼ä£¬ÒòΪËüÃDZØÐ붨ÒåÒ»¸ö·½·¨À´¶¯Ì¬ÏÂÔØÎļþ¡£ÔÚä¯ÀÀÆ÷Ö§³Ö¸ÃÌØÐÔÒÔǰ£¬ÎÒÃÇ¿ÉÒÔʹÓñàÒëÆ÷£¬Èç Traceur¡¢6to5¡¢ES6 Module LoaderÒÔ¼°ÆäËü¿ÉÒÔÈÃES6Ä£¿éת»»³ÉES5µÄתÂëÆ÷¡£

JavaScriptÄ£¿éϵͳµÄÏÖ×´

CommonJSÄ£¿éϵͳ

CommonJsÊÇÒ»¸öÓÉ¿ªÔ´¿ª·¢Õß×é³ÉµÄÍŶӣ¬Ö÷ÒªÎ§ÈÆJavaScriptʵÏÖһЩAPI¼°¿ªÕ¹Ñз¢Êµ¼ù¡£¸ÃÍŶÓÌá³öÁËÒ»¸öJavaScriptÄ£¿é¹æ·¶¡£Ã¿¸öÎļþ¶¼¿Éµ±×÷Ò»¸öÄ£¿é£¬²¢ÇÒÿ¸öÎļþ¿ÉÒÔ·ÃÎÊÁ½¸ö¶ÔÏó£ºrequireºÍexport¡£requireÓÃÀ´½ÓÊÕ×Ö·û´®£¨Ä£¿éÃû£©£¬²¢·µ»Ø¸ÃÄ£¿éÊä³öµÄ¶ÔÏó¡£export¶ÔÏóÓÃÀ´µ¼³ö¸ÃÄ£¿éµÄ·½·¨ºÍ±äÁ¿¡£require·½·¨·µ»ØµÄ¾ÍÊÇexport¶ÔÏó¡£Ä£¿éͬ²½¼ÓÔØ¡£·þÎñÆ÷¶ËJavaScriptÒýÇæNode.js¾ÍÊÇÓõÄÕâ¸öÄ£¿éϵͳ¡£

Ò첽ģ¿é¶¨Ò壨AMD£©

AMDÊÇÒ»¸ö²ÉÓÃÒì²½·½Ê½¼ÓÔØÒÀÀµÄ£¿éµÄÄ£¿éϵͳ¡£Èç¹ûÄ£¿éÔÚ²»Í¬ÎļþÖУ¬ËüÃǽ«²ÉÓÃXHR½øÐмÓÔØ¡£Ä³Ò»Ä£¿é½«µÈÆäËùÒÀÀµµÄÄ£¿éÒ»Ò»¼ÓÔØºó²Å»á±»Ö´ÐС£AMDÄ£¿é±ØÐëÊÇÒ»¸öº¯Êý£¬²¢×÷Ϊ²ÎÊý´«Èëdefineº¯ÊýÖС£º¯ÊýµÄ·µ»ØÖµ½«´«Ê䏸ËùÓÐÒÀÀµµÄÄ£¿é£¬Ëù»ñµÃ·µ»ØÖµÓÖ½«×÷Ϊ²ÎÊý´«¸øÄ£¿é·½·¨¡£Require.js¿âÖÐʵÏÖÁËAMD¡£

TypeScriptÄ£¿é

TypeScript£¬×÷ΪJavaScriptµÄ³¬¼¯£¬Ò²ÌṩÁËÒ»¸öÄ£¿éϵͳ¡£µ±Ëü±»±àÒëʱ£¬±ã¿ªÊ¼Ê¹ÓÃJavaScriptÄ£¿éģʽ¡£TypeScriptÄ£¿éʹÓÃmodule¹Ø¼ü×Ö¶¨Ò壬Èκα»Êä³öµÄ¶ÔÏó±ØÐëʹÓÃexport¹Ø¼ü×Ö¶¨Òå¡£import¹Ø¼ü×ÖÓÃÀ´½«ÆäËüÄ£¿é¼ÓÔØÈëÄ£¿éÖУ¬²¢²¶×½¸ÃÄ£¿éµ¼³öµÄ¶ÔÏó¡£TypeScriptÄ£¿éÊÇͬ²½¼ÓÔØµÄ¡£

ES6Ä£¿éϵͳ

ES6Ä£¿éϵͳÆô·¢ÓÚÉÏÊöÏÖÓÐÄ£¿éϵͳ£¬Ëü¾ßÓÐÒÔÏÂÌØÐÔ£º

  • ʹÓÃexport¹Ø¼ü´Êµ¼³ö¶ÔÏó¡£Õâ¸ö¹Ø¼ü×Ö¿ÉÒÔÎÞÏÞ´ÎʹÓã»
  • ʹÓÃimport¹Ø¼ü×Ö½«ÆäËüÄ£¿éµ¼Èëijһģ¿éÖС£Ëü¿ÉÓÃÀ´µ¼ÈëÈÎÒâÊýÁ¿µÄÄ£¿é£»
  • Ö§³ÖÄ£¿éµÄÒì²½¼ÓÔØ£»
  • Ϊ¼ÓÔØÄ£¿éÌṩ±à³ÌÖ§³Ö¡£

½ÓÏÂÀ´ÈÃÎÒÃÇͨ¹ý¾ßÌå±à³Ì·½·¨¿´¿´Ã¿Ò»¸öÌØÐÔ¡£

µ¼³ö¶ÔÏó

ÔÚÏÖÓеÄÄ£¿éϵͳÖУ¬Ã¿¸öJavaScript´úÂëÎļþÔÚES6Öж¼ÊÇÒ»¸öÄ£¿é¡£Ö»ÓÐÄ£¿éÖеĶÔÏóÐèÒª±»Íⲿµ÷ÓÃʱ£¬Ä£¿é²Å»áÊä³ö¶ÔÏ󣬯äÓàÔò¶¼ÊÇÄ£¿éµÄ˽ÓжÔÏ󡣸ô¦Àí·½Ê½½«Ï¸½Ú½øÐзâ×°£¬½öµ¼³ö±ØÒªµÄ¹¦ÄÜ¡£

´ÓÄ£¿éÀïµ¼³ö¶ÔÏó£¬ES6ΪÎÒÃÇÌṩÁ˲»Í¬·½·¨£¬¼ûÏÂÃæµÄÌÖÂÛ¡£

ÄÚÁªµ¼³ö

ES6Ä£¿éÀïµÄ¶ÔÏó¿ÉÔÚ´´½¨ËüÃǵÄÉùÃ÷Öе¼³ö¡£Ò»¸öÄ£¿éÖпÉÎÞÊý´ÎʹÓÃexport£¬ËùÓеĶÔÏ󽫱»Ò»Æðµ¼³ö¡£Çë¿´ÏÂÃæµÄÀý×Ó£º

export class Employee{  
constructor(id, name, dob){
this.id = id;
this.name=name;
this.dob= dob;
}
getAge(){
return (new Date()).getYear() - this.dob.getYear();
}
}
export function getEmployee(id, name, dob){
return new Employee(id, name, dob);
}
var emp = new Employee(1, "Rina", new Date(1987, 1, 22));

°¸ÀýÖеÄÄ£¿éµ¼³öÁËÁ½¸ö¶ÔÏó£º EmployeeÀ࣬getEmployeeº¯Êý¡£Òò¶ÔÏóempδ±»µ¼³ö£¬ËùÒÔÆäÈÔΪģ¿é˽ÓС£

µ¼³öÒ»×é¶ÔÏó

¾¡¹ÜÄÚÁªµ¼³öºÜÓÐЧ£¬µ«ÔÚ´ó¹æÄ£Ä£¿éÖУ¬Ëü¾ÍºÜÄÑ·¢»Ó×÷ÓÃÁË£¬ÒòΪÎÒÃÇ¿ÉÄÜÎÞ·¨×·×Ùµ½Ä£¿éµ¼³öÀ´µÄ¶ÔÏó¡£ÔÚÕâÖÖÇé¿öÏ£¬¸üºÃµÄ°ì·¨ÊÇ£¬ÔÚÄ£¿éµÄĩβµ¥¶À½øÐе¼³öÉùÃ÷£¬ÒÔµ¼³ö¸ÃÄ£¿éÖеÄÈ«²¿¶ÔÏó¡£

ʹÓõ¥¶Àµ¼³öÉùÃ÷ÖØÐ´ÉÏÒ»°¸ÀýÖеÄÄ£¿é£¬½á¹ûÈçÏ£º

class Employee{  
constructor(id, name, dob){
this.id = id;
this.name=name;
this.dob= dob;
}
getAge(){
return (new Date()).getYear() - this.dob.getYear();
}
}
function getEmployee(id, name, dob){
return new Employee(id, name, dob);
}
var x = new Employee(1, "Rina", new Date(1987, 1, 22));
export {Employee, getEmployee};

ÔÚµ¼³öʱ£¬ÖØÃüÃû¶ÔÏóÒ²ÊÇ¿ÉÒԵġ£ÈçÏÂÀýËùʾ£¬EmployeeÔÚµ¼³öʱÃû×Ö¸ÄΪÁËAssociate£¬º¯ÊýGetEmployee¸ÄÃûΪgetAssociate¡£

export {  
Associate as Employee,
getAssociate as getEmployee
};

Defaultµ¼³ö

ʹÓùؼü×Ödefault£¬¿É½«¶ÔÏó±êעΪdefault¶ÔÏóµ¼³ö¡£default¹Ø¼ü×ÖÔÚÿһ¸öÄ£¿éÖÐÖ»ÄÜʹÓÃÒ»´Î¡£Ëü¼È¿ÉÒÔÓÃÓÚÄÚÁªµ¼³ö£¬Ò²¿ÉÒÔÓÃÓÚÒ»×é¶ÔÏóµ¼³öÉùÃ÷ÖС£

ÏÂÃæ°¸ÀýչʾÁËÔÚ×éµ¼³öÓï¾äÖÐʹÓÃdefault£º

export default {  
Employee,
getEmployee
};

µ¼ÈëÄ£¿é

ÏÖÓÐÄ£¿é¿ÉÒÔʹÓùؼü×Öimportµ¼Èëµ½ÆäËüÄ£¿é¡£Ò»¸öÄ£¿é¿ÉÒÔ±»µ¼ÈëÈÎÒâÊýÁ¿µÄÄ£¿éÖС£ÏÂÎÄչʾÁ˵¼ÈëÄ£¿éµÄ²»Í¬·½Ê½¡£

ÎÞ¶ÔÏóµ¼Èë

Èç¹ûÄ£¿é°üº¬Ò»Ð©Âß¼­ÒªÖ´ÐУ¬ÇÒ²»»áµ¼³öÈκζÔÏ󣬴ËÀà¶ÔÏóÒ²¿ÉÒÔ±»µ¼Èëµ½Áíһģ¿éÖС£ÈçÏÂÃæ°¸ÀýËùʾ£º

import './module1.js';

µ¼ÈëĬÈ϶ÔÏó

²ÉÓÃDefaultµ¼³ö·½Ê½µ¼³ö¶ÔÏ󣬸öÔÏóÔÚimportÉùÃ÷Öн«Ö±½Ó±»·ÖÅ䏸ij¸öÒýÓã¬ÈçÏÂÀýÖеġ°d¡±¡£

import d from './module1.js';

µ¼ÈëÃüÃûµÄ¶ÔÏó

ÕýÈçÒÔÉÏÌÖÂ۵ģ¬Ò»¸öÄ£¿é¿ÉÒÔµ¼³öÐí¶àÃüÃû¶ÔÏó¡£Èç¹ûÁíһģ¿éÏëµ¼ÈëÕâЩÃüÃû¶ÔÏó£¬ÐèÒªÔÚµ¼ÈëÉùÃ÷ÖÐÒ»Ò»ÁгöÕâЩ¶ÔÏó¡£¾Ù¸öÀý×Ó£º

import {Employee, getEmployee} from './module1.js';

µ±È»Ò²¿ÉÔÚͬһ¸öÉùÃ÷Öе¼ÈëĬÈ϶ÔÏóºÍÃüÃû¶ÔÏó¡£ÕâÖÖÇé¿öÏ£¬Ä¬È϶ÔÏó±ØÐ붨ÒåÒ»¸ö±ðÃû£¬ÈçÏÂÀý¡£

import {default as d, Employee} from './module1.js';

µ¼ÈëËùÓжÔÏó

ÒÔÉϼ¸ÖÖÇé¿ö£¬Ö»ÓÐimportÉùÃ÷ÖÐÁоٵĶÔÏó²Å»á±»µ¼Èë²¢±»Ê¹Ó㬶øÆäËü¶ÔÏóÔòÎÞ·¨ÔÚµ¼ÈëÄ£¿éÖÐʹÓᣵ±È»£¬Õâ¾ÍÒªÇóÓû§Á˽âÄÄЩ¶ÔÏó¿ÉÒÔµ¼³ö²¢¼ÓÒÔÀûÓá£Èç¹ûÄ£¿éµ¼³ö´óÁ¿¶ÔÏó£¬Áíһģ¿éÏëÒýÈëËùÓе¼³öµÄ¶ÔÏ󣬾ͱØÐëʹÓÃÈçÏÂÉùÃ÷£º

import * as allFromModule1 from './module1.js';

allFromModule1ÕâÒ»±ðÃû½«Ö¸ÏòËùÓдÓmodule1µ¼³öµÄ¶ÔÏó¡£ÔÚµ¼ÈëÄ£¿éÖУ¬ËüÃÇ×÷ΪÊôÐԿɱ»·ÃÎÊ¡£

¿É±à³ÌʽµÄ°´Ðèµ¼Èë

Èç¹ûÏë»ùÓÚijЩÌõ¼þ»òµÈij¸öʼþ·¢ÉúºóÔÙ¼ÓÔØÐèÒªµÄÄ£¿é£¬¿Éͨ¹ýʹÓüÓÔØÄ£¿éµÄ¿É±à³ÌAPI£¨programmatic API£©À´ÊµÏÖ¡£Ê¹ÓÃSystem.import·½·¨£¬¿É°´³ÌÐòÉ趨¼ÓÔØÄ£¿é¡£ÕâÊÇÒ»¸öÒì²½µÄ·½·¨£¬²¢·µ»ØPromise¡£

¸Ã·½·¨µÄÓ﷨ʾÀýÈçÏ£º

System.import('./module1.js')  
.then(function(module1){
//use module1
}, function(e){
//handle error
});

Èç¹ûÄ£¿é¼ÓÔØ³É¹¦ÇÒ½«µ¼³öµÄÄ£¿é³É¹¦´«µÝ¸ø»Øµ÷º¯Êý£¬Promise½«»áͨ¹ý¡£Èç¹ûÄ£¿éÃû³ÆÓÐÎó»òÓÉÓÚÍøÂçÑÓ³ÙµÈÔ­Òòµ¼ÖÂÄ£¿é¼ÓÔØÊ§°Ü£¬Promise½«»áʧ°Ü¡£

ES6Ä£¿éʹÓÃÏÖ×´

µ½Ä¿Ç°ÎªÖ¹£¬ËùÓÐä¯ÀÀÆ÷»¹²»ÄÜ×ÔȻ֧³ÖES6Ä£¿é£¬ËùÒÔÔÚä¯ÀÀÆ÷¼ÓÔØÖ®Ç°£¬ÎÒÃÇÐèҪʹÓÃתÒëÆ÷£¨transpiler£©½«´úÂëת»»³ÉES5¡£Ö±µ½ÏÖÔÚ£¬ÎÒһֱʹÓÃTraceur×÷ΪÎÒµÄתÒëÆ÷£¬½¨Òé´ó¼ÒʹÓÃÏàͬµÄ¹¤¾ß½«Ä£¿é´úÂëת»¯Îªä¯ÀÀÆ÷¿Éʶ±ðµÄ´úÂë¡£ÈÃÎÒÃÇ¿´¿´±àÒëES6Ä£¿éµÄ¼¸ÖÖ²»Í¬µÄ·½·¨¡£

ʹÓÃTraceur¶¯Ì¬±àÒëES6Ä£¿é

µ±ä¯ÀÀÆ÷¼ÓÔØ½Å±¾ºó£¬ÎÒÃÇ¿ÉÒÔʹÓÃTraceurµÄ¿Í»§¶Ë¿â¶¯Ì¬±àÒëES6Ä£¿é¡£Ê¹Óø÷½·¨£¬ÔËÐÐÄ£¿éÎÞÐèÔËÐÐÈκÎÃüÁî¡£ÎÒÃÇÒª×öµÃ¾ÍÊÇ£¬ÔÚÒ³ÃæÉϼÓÔØTraceur¿â£¬¼°Ìí¼Ó´úÂë½Å±¾À´ÔËÐÐWebPageTranscoder¡£

<script>  
new traceur.WebPageTranscoder(document.location.href).run();
</script>

ÏÖÔÚ£¬ÎÒÃǾͿÉÒÔÔÚscript±êÇ©ÄÚ£¬½«ÀàÐÍÖ¸¶¨³ÉÄ£¿é£¬ÒԴ˵¼ÈëÈκÎÒ»¸öES6Îļþ¡£

<script type="module">  
import './modules/import1.js';
</script>

ÀàÐÍÖ¸¶¨ÎªÄ£¿éµÄÈκνű¾±êÇ©½«±»ES6¿Í»§¶Ë¿â»ñÈ¡²¢´¦Àí¡£ÉÏÃæ´úÂë¿éÖеĵ¼ÈëÓï¾ä½«·¢ËÍAJAXÇëÇ󣬲¶»ñÏàÓ¦µÄJavaScriptÎļþ£¬²¢ÔØÈëËü¡£Èç¹ûÄ£¿éÄÚ²¿ÒýÓÃÁËÁíÒ»¸öÄ£¿é£¬µ¥¶ÀµÄAJAXÇëÇ󽫷¢³ö£¬ÒÔ¼ÓÔØÓëÒýÓÃÄ£¿éÏà¶ÔÓ¦µÄÎļþ¡£

ʹÓÃTraceurÃüÁî±àÒëES6Ä£¿é

ʹÓÃTraceurÃüÁî¿ÉÒÔ½«ES6Ä£¿é±àÒë³ÉAMD»òÕßCommonJSÄ£¿é¡£Õâ¸ö·½·¨ÓÐÁ½´óÓŵ㡣

  1. Ä£¿éÍê³É±àÒ룬ä¯ÀÀÆ÷²»±ØÖ´ÐжîÍ⶯×÷£»
  2. Èç¹ûÓ¦ÓÃÒѾ­Ê¹ÓÃES5¼°AMD£¨»òCommonJs£©Ä£¿éϵͳ¹¹½¨ÁËÒ»°ë£¬³ÌÐòµÄÁíÒ»°ëÒ²¿ÉÒÔʹÓÃES6£¬²¢±»±àÒëΪÕâЩģ¿éϵͳÖеÄÈκÎÒ»¸ö£¬¶ø²»ÊÇÁ¢¼´°ÑÕû¸öÓ¦ÓñàÒë³ÉES6¡£

ΪÁËʹÓñàÒëÍê³ÉµÄAMD/CommonJsµÄÄ£¿é£¬ÎÒÃÇÐèÒª°üº¬Ö§³ÖÄ£¿éϵͳµÄ¿â¡£ÎÒ¸öÈ˱ȽÏÇãÏòAMD£¬ËùÒÔÎÒ½«ÔÚÕâÀï½éÉÜÒ»ÏÂËü¡£CommonJSÄ£¿éµÄ²½ÖèºÍÕâ¸ö²î²»¶à¡£

ÏÂÃæÕâ¾äÃüÁîÊÇÓÃÀ´Èðüº¬ES6Ä£¿éµÄÎļþ¼Ð±àÒë³ÉAMD£¬²¢°ÑËüÃÇ´æ´¢ÔÚÒ»¸öµ¥¶ÀµÄÎļþ¼Ð£º

traceur --dir modules es5Modules --modules=amd

ʹÓÃCommonJs£¬ÄãÐèÒªÔÚÉÏÃæÃüÁîÖÐʹÓÃcommonjs´úÌæmodules¡£

ÔÚÕâÀmodulesÖ¸µÄÊǰüº¬ES6µÄÎļþ¼Ð£¬es5ModulesÖ¸µÄÊÇÊä³öĿ¼¡£Èç¹û²é¿´es5ModulesÎļþ¼ÐϵÄÈκÎÎļþ£¬Ä㽫¿´µ½¸ÃAMD¶¨Òå¿é¡£require.jsÖ§³ÖAMD£¬ËùÒÔÎÒÃÇ¿ÉÒÔÔÚHTMLÒ³ÃæÖУ¬Ê¹ÓÃscriptÒýÈërequire.js£¬²¢ÓÃdata-mainÊôÐÔÖ¸Ã÷¿ªÊ¼Îļþ£¬¾ÍÏñÏÂÃæÕâÑù£º

<script src="bower_components/requirejs/require.js"
data-main="es5Modules/import2.js"></script>

ʹÓÃTraceur Grunt Task±àÒëES6Ä£¿é

ʹÓÃÃüÁî±àÒëÄ£¿éºÜÀÛ¶øÇÒ¸üÈÝÒ׳ö´í¡£ÎÒÃÇ¿ÉÒÔʹÓÃgrunt-traceur×Ô¶¯»¯±àÒë¹ý³Ì¡£´Ëʱ£¬ÄãÐèÒª°²×°NPM°ü¡£

npm intall grunt-traceur ¨Csave

GruntÈÎÎñËùÐèÊý¾ÝÓëÌṩ¸øÃüÁîµÄÊý¾ÝÒ»Ñù¡£ÏÂÃæÊÇÈÎÎñµÄһЩÅäÖãº

traceur: {  
options: {
modules: "amd"
},
custom: {
files: [{
expand: true,
cwd: 'modules',
src: ['*.js'],
dest: 'es5Modules'
}]
}
}

ÏÖÔÚÄã¿ÉÒÔÔÚ¿ØÖÆÌ¨ÀïʹÓÃÏÂÃæµÄÃüÁîÀ´ÔËÐÐÉÏÃæµÄGruntÈÎÎñ£º

grunt traceur

ÕýÈçÄãËù¿´¼ûµÄÄÇÑù£¬ËüºÍÎÒÃÇʹÓÃÃüÁîËù²úÉúµÄЧ¹ûÊÇÒ»ÑùµÄ¡£

½áÂÛ

ÈκÎÒ»¸ö´óÐÍÓ¦ÓÃÖУ¬Ä£¿é»¯Ê®·Ö±ØÒª¡£ES6Ä£¿éΪJavaScriptÌṩÁ˸ÃÌØÐÔ£¬ÕâЩģ¿éÌṩÁËÖÚ¶àÑ¡ÔñÀ´µ¼³öºÍÒýÈë¶ÔÏó¡£ÎÒºÜÆÚ´ý¸ÃÌØÐÔ±»ä¯ÀÀÆ÷Ö§³ÖµÄÄÇÒ»Ì죬µ½Ê±ÎÒÃÇÎÞÐè¼ÓÔØÈκεÚÈý·½¿â¼´¿É´´½¨¡¢¼ÓÔØJavaScriptÄ£¿é¡£Ä¿Ç°Á÷ÐеĿͻ§¶ËMV*¿ò¼ÜAngular.jsÔÚÆä2.0°æ±¾£¨Ä¿Ç°»¹ÔÚ¿ª·¢ÖУ©ÖоÍʹÓÃÁËES6µÄÄ£¿é»¯¡£

ÈÃÎÒÃÇ¿ªÊ¼Ê¹ÓÃÄ£¿éϵͳ£¬´Ó¶øÈÃÎÒÃǵĴúÂë¸ü¾ß×éÖ¯ºÍ¿É¶ÁÐÔ¡£

   
2792 ´Îä¯ÀÀ       27
Ïà¹ØÎÄÕ Ïà¹ØÎĵµ Ïà¹Ø¿Î³Ì



Éî¶È½âÎö£ºÇåÀíÀôúÂë
ÈçºÎ±àд³öÓµ±§±ä»¯µÄ´úÂë
ÖØ¹¹-ʹ´úÂë¸ü¼ò½àÓÅÃÀ
ÍŶÓÏîÄ¿¿ª·¢"±àÂë¹æ·¶"ϵÁÐÎÄÕÂ
ÖØ¹¹-¸ÄÉÆ¼ÈÓдúÂëµÄÉè¼Æ
Èí¼þÖØ¹¹v2
´úÂëÕû½àÖ®µÀ
¸ßÖÊÁ¿±à³Ì¹æ·¶
»ùÓÚHTML5¿Í»§¶Ë¡¢Web¶ËµÄÓ¦Óÿª·¢
HTML 5+CSS ¿ª·¢
ǶÈëʽC¸ßÖÊÁ¿±à³Ì
C++¸ß¼¶±à³Ì
×îл¼Æ»®
DeepSeekÔÚÈí¼þ²âÊÔÓ¦ÓÃʵ¼ù 4-12[ÔÚÏß]
DeepSeek´óÄ£ÐÍÓ¦Óÿª·¢Êµ¼ù 4-19[ÔÚÏß]
UAF¼Ü¹¹ÌåϵÓëʵ¼ù 4-11[±±¾©]
AIÖÇÄÜ»¯Èí¼þ²âÊÔ·½·¨Óëʵ¼ù 5-23[ÉϺ£]
»ùÓÚ UML ºÍEA½øÐзÖÎöÉè¼Æ 4-26[±±¾©]
ÒµÎñ¼Ü¹¹Éè¼ÆÓ뽨ģ 4-18[±±¾©]

AndroidÊÖ»ú¿ª·¢£¨Ò»£©
Àí½âJavascript
·ÇµäÐÍajaxʵ¼ù
³¹µ×µÄAjax
javascript ʹÓÃCookies
ʹÓà jQuery ¼ò»¯ Ajax ¿ª·¢


Struts+Spring+Hibernate
»ùÓÚJ2EEµÄWeb 2.0Ó¦Óÿª·¢
J2EEÉè¼ÆÄ£Ê½ºÍÐÔÄܵ÷ÓÅ
Java EE 5ÆóÒµ¼¶¼Ü¹¹Éè¼Æ
Javaµ¥Ôª²âÊÔ·½·¨Óë¼¼Êõ
Java±à³Ì·½·¨Óë¼¼Êõ


ijº½¿Õ¹«Ë¾IT²¿ JavaScriptʵ¼ù
ijµçÊÓÈí¼þ HTML5ºÍJavaScript
Öк½ÐÅ JavaScript¸ß¼¶Ó¦Óÿª·¢
´óÇìÓÍÌï web½çÃæAjax¿ª·¢¼¼Êõ
ºÍÀûʱ ʹÓÃAJAX½øÐÐWEBÓ¦Óÿª·¢