JavaScript(ES2015ļ¼ES6ļ¼) ćš¾ē«ć”ę¢ć¾ć£ć¦äøę¦å¾©ē暣ā”š„š„ššć
äøę¦å¾©ēæē¬¬äŗå¼¾āļø
ćProgate JavaScriptćā
£ćā
¦ć
ååć®ćé¢ę°ćć¾ć§å¾©ēæććē“10ę„ć¶ćć§ćććčØé²ćć£ć¦ć大äŗć§ććććććć©ē¾å®ćēŖćć¤ććććććā¦ ćć©ćę¹ē«ćÆććŖććā
Progatećć¾ć§åæćć¦ććē®ęćåćć£ć¦ćŖćć£ćē®ęćåē¢ŗčŖļ¼
šćŖććøć§ćÆćć®å¾©ēæ
ć// å®ę°animalćå®ē¾©ćć¦ćć ćć
ććconst animal = {
ćććname:"ć¬ćŖ" ,
ćććage:3 ,
ćććgreet : () => {ćconsole.log("ććć«ć”ćÆ");ć}
ćć};ćććāā ļøćļ¼ćåæćć¦ćš±
ć// animalć®nameš·ććććć£ć®å¤ćåŗåćć¦ćć ćć
ććconsole.log(animal.name);
ć// animalć®greetš·ććććć£ć®é¢ę°ćå®č”ćć¦ćć ćć
ććanimal.greet();
šćÆć©ć¹ććēęćććŖććøć§ćÆććÆć¤ć³ć¹ćæć³ć¹
ćāć¤ć³ć¹ćæć³ć¹ćconsole.logćććØćclassć®ćŖććøć§ćÆććåŗåććć
ćclass Animal {ć}
// AnimalćÆć©ć¹ć®ć¤ć³ć¹ćæć³ć¹ćå®ę°animalć«ä»£å
„ćć¦ćć ćć
ćconst animal = new Animal ( ) ; āā ļøš½ć¤ć³ć¹ćæć³ć¹ļ¼å¼ę°ēØć®ćļ¼ ļ¼ć
// å®ę°animalć®å¤ćåŗåćć¦ćć ćć
ćconsole.log(animal);
šć³ć³ć¹ćć©ćÆćæļ¼classć®čØčØå³ļ¼
ćāć¤ć³ć¹ćæć³ć¹ćēęćććē“å¾ć«å®č”
ććclass Animal {
ć// ć³ć³ć¹ćć©ćÆćæćčæ½å ćć¦ćć ćć
ćććconstructor ( ) {ććāā ļøš½å¼ę°ēØć®ćļ¼ ļ¼ćåæćć¦ćš±
ććććconsole.log("ć¤ć³ć¹ćæć³ć¹ćēęćć¾ćć"); }
ććć}
ććconst animal = new Animal();
šć³ć³ć¹ćć©ćÆćæć®äøć§ćć¤ć³ć¹ćæć³ć¹ć«é¢ććę
å ±ćčæ½å
ćāć¤ć³ć¹ćæć³ć¹ćÆććÆć©ć¹ććēęćććŖććøć§ćÆć
ćāę
å ±ćÆććććććć£ļ¼å¤ćć§čæ½å ļ¼thisļ¼
ć
šć”ć½ććļ¼ć¤ć³ć¹ćæć³ć¹ć®åä½ļ¼
ćāć”ć½ććå
ć§ćć¤ć³ć¹ćæć³ć¹ć®ćå¤ććå©ēØć§ććļ¼ćthis.ććććć£åććä½æēØļ¼
ćāć”ć½ććå
ć§ä»ć®ć”ć½ćććå©ēØććććØćåÆč½ļ¼ćthis.ć”ć½ććå( )ćļ¼
ććš·ććććć£ć®é¢ę°ćå®č”ć§ćåŗę„ćā¦
šč¦ŖćÆć©ć¹ććć”ć½ćććå¼ćē¶ćåćÆć©ć¹
ćāåćÆć©ć¹å
ć§ćę°ć”ć½ćććä½ęććę»ćå¤ćå©ēØć§ććć
ććā class Dog extends Animal {
ćććććććā£getHumanAge(){
ćććććććććććććććā¤return this.age*7; } }
ććā”const dog = new Dog("ć¬ćŖ", ā„4);
ććā¢dog.info();
ććā¦const humanAge = dog.getHumanAge( );
ććā§console.log(`äŗŗé幓齢ć§${humanAge}ę³ć§ć`);
ćā ā”ā¢ādogćØćć¦ććć¬ćŖććØććę°ććę
å ±ćåŗåćććć
ćā£äŗŗé幓齢ćč”Øē¤ŗćććććŖ
ćā¤ć¬ćŖć®å¹“é½¢ćå
ć«äŗŗé幓齢ćčØē®ććå¤ććę»ćå¤ććØćć¦ä»£å
„ć
ćā„ćęåćÆćthis.ageć
ćā¦ćā£ć®åŗåć«åæ
č¦ćŖå¤ćå®ē¾©ļ¼ā„ć«åƾćć¦ā¤ćä½ććā¤ćä½æććā£ćåŗåććććć«ā”ćēØćć¦ā¦ćå®ē¾©ļ¼ć
ćā§ ā¦ćēØćć¦ę
å ±ćåŗåć
šćŖć¼ćć¼ć©ć¤ćļ¼ć”ć½ćććć³ć³ć¹ćć©ćÆćæļ¼
ććāåćÆć©ć¹ćč¦ŖćÆć©ć¹ćäøęøć
ććclass Animal {
ććććconstructor(name, age) {
ćććććććććććććććććthis.name = name;
ćććććććććććććććććthis.age = age;}
ććććgreet() {
ććććććććconsole.log("ććć«ć”ćÆ");}
ććććinfo() {
ććććććććthis.greet();
ććććććććconsole.log(`ååćÆ${this.name}ć§ć`);
ććććććććconsole.log(`${this.age}ę³ć§ć`);}
ćć}
ććclass Dog extends Animal {
ććććgetHumanAge() {
ćććććććććććććreturn this.age * 7;}
ććććinfo(){
ććććććććthis.greet();
ććććććććconsole.log(`ååćÆ${this.name}ć§ć`);
ććććććććconsole.log(`${this.age}ę³ć§ć`);}
ćććć ććš½const humanAge = this.getHumanAge();
ććććć ćš½console.log(`äŗŗé幓齢ć§${humanAge}ę³ć§ć`);}
ćć}
ććććconst dog = new Dog("ć¬ćŖ", 4);
ć ćš½dog.info();
2h30mććć£ććć§ććā¦
ä»åćÆ1ļ½ēØć§ććććć£ć±ćć¾ćØćć¦ć¬ććć§ćććØē¹ćććåćććććć£ćć§ććć
šćÆć©ć¹ćå®ē¾©å
export default Animal;
ććāimport Animal from "./animal";
šååä»ććØćÆć¹ćć¼ć
ćādefaultćęøććć«ćååć{}ć§å²ćć§ćØćÆć¹ćć¼ććć
šēøåƾćć¹
ććć£ć¬ćÆććŖć®ē§»åļ¼ ./ / ļ¼ćØćé層ć®ē§»åļ¼ ../ ļ¼
šććć±ć¼ćøć«ć¤ćć¦
ćāćć®ęćÆäøęč°ć®å½ć®ć¦ć¼ćć³ć§ććććä»ćÆć³ć©ć ćēµć復ēæćēµćć¦ćē”äŗć«ē¾å®äøēć«ę»ć£ć¦ććććććŖę°ććć¾ćš½āļø ē¾å®äøēć§ććć¦ć¼ćć³š½ććØććć¼ć¢ć«šøćć®éćć«ę°ć„ććčØę£ććꬔē¬¬ć§ćš¾ć¤ć ćć£ć«å¤©ę“„é£Æćęé£Æć«ććøć¼ćæćę¹ćć¦ććć©ć“ć³ćć¼ć«ć®äøēč¦³ćććć§ććāØ
šć³ć¼ć«ćććÆé¢ę°ļ¼ push ć forEach ć find ć filter ć map ļ¼
ćå¼ę°ć«å
„ć£ć¦ććé¢ę°
ććforEachć
ćconst characters = ["ć«ćććććć", "ćć¤ćć¼ććć", "ć²ć¤ćä»äŗŗ", "ćØćććć"];
// forEachć”ć½ćććä½æć£ć¦ćé
åcharactersć®äøčŗ«ććć¹ć¦åŗåćć¦ćć ćć
characters.forEach ( (character) => {console.log(character);} );
ććććāā ļøforEachļ¼ ļ¼ćåŗę¬
ććććććāā ļøå¼ę° character ćÆåę°ć
ććforEachć
ćconst names = [
ćććććććććć{firstName: "Kate", lastName: "Jones"},
ćććććććććć{firstName: "John", lastName: "Smith"},
ćććććććććć{firstName: "Denis", lastName: "Williams"},
ćććććććććć{firstName: "David", lastName: "Black"}ć];
ć// å®ę°namesć«mapć”ć½ćććä½æć£ć¦ę°ććé
åćä½ććå®ę°fullNamesć«ä»£å
„ćć¦ćć ćć
ćconst fullNames = names.map((name) => {
ćććććććććreturn name.firstName + name.lastName ;ć});
ćććāā ļøå®ę°ć§ćÆćŖććå¼ę°ć®ć name . ććåæćć¦ćš±
ć// å®ę°fullNamesćåŗåćć¦ćć ćć
ćconsole.log(fullNames);
šć³ć¼ć«ćććÆé¢ę°
ćconst printWanko = () => {
ććććconsole.log("ć«ćććććć");ć};
ćconst call = (callback) => {
ććććconsole.log("ć³ć¼ć«ćććÆé¢ę°ćå¼ć³åŗćć¾ćć");
ććććcallback();ć};ććāš½é¢ę°ćå¼ć³åŗć
ćććććććććććććććā ļøå¼ę°ć代å
„ćććØå¼ć³åŗććŖćļ¼
ćcall(printWanko);ćććācallć®é¢ę°ćå¼ć³åŗććęć
ććććććććććććććconsolećØå¼ę°ć«ä»£å
„ćććé¢ę°ćåŗåć
ććććććććććććććā ļøå¼ę°ć代å
„ććć¦ććéćÆćć³ć¼ć«ćććÆé¢ę°ć§ćå¼ę°ć代å
„ććŖććØåŗåć§ććŖćć
šćæć¼ććć«ć«ć¤ćć¦
Homebrewćš½macOSļ¼ć¾ććÆLinuxć·ć¹ćć ļ¼ć®ę©č½ćč£å®
ā
nodebrewćš½node.jsć®ćć¼ćøć§ć³ē®”ēćć¼ć«
ććććććļ¼č¤ę°ć®node.jsć®ćć¼ćøć§ć³ćē°”åć«åćęæććććļ¼
ā
node.jsććš½ćµć¼ćć¼ćµć¤ćć®JavaScriptå®č”ē°å¢
ććććććććnode.jsć§ćć”ć¤ć«ćå®č”ććéćÆć
ćććććććććnode ćć”ć¤ć«åććØćæć¼ććć«ć«å
„å
ā
npmćććš½node.jsć®ććć±ć¼ćøē®”ēć¢ććŖ
ććććććāpackage.jsonć
ććććććš·ćnpm initćć§ēęćććnode.jsć®čØå®ē®”ēćć”ć¤ć«
ā
babelćććš½ę°ććč¦ę ¼ć§čØčæ°ćććć³ć¼ććES5ćŖć©ć®
ćććććććå¤ćč¦ę ¼ć«ęøćęććļ¼ć³ć³ćć¤ć©ļ¼ććć±ć¼ćø
ććććććš·package.jsonć«ćbabelć³ćć³ććē»é²ćć
šnpmććć±ć¼ćø
ćć¾ćØćć
ććÆć復ēæćØććåć®å復ē·“ēæćÆćØć¦ć大åć ćØå®ęććꬔē¬¬ć§ćā¦
ē“2ć¶ęåć«č¦ćęćććÆć ćć¶ć¤ć”ć¼ćøćć¤ćć¦ę„ćććć«ćŖćļ¼ććććććš ļ¼ćProgateę§ć§ćć£ć¦ććććØć®åē¢ŗčŖćꬔć®å¦ēæććøć§ć³ćč¦ćć¦ćć¾ććšš±
ć¾ćć
čæ½å å¦ēæć§ę¢ćäøć§ćććŖć®ćč¦ć¤ćć¦å°ććć£ć¦ćæć¾ććć
ļ¼GitHubć§ć®ćć°ć¤ć³ćåÆč½ć ć£ć£ćććļ¼ććć¼ć¼ć¼ć¼ć¼ć¼ćā¦ ć¤ćć¤ć(ļæ£āļæ£;) éęęć«ę¬ ććā¦
ćØćććć
ćććę°ć®ććć°ćę¹ćć¦č¦ć¦ćć¾ć ć¾ć ć¾ć ā¦éåć°ć§ććććØć®å®ęććhtml /cssć«ććäøåę»ć£ć¦ē·“ēæćććę°ęć”ćŖć©ćåŗć¦ćć¾ćć¦ā¦
ćććććā¦ē¦ćā¦ššš
ććå°ćä»ćµć¤ćć§JavaScriptć®å¦ēæććć©č¦ćć¦ćććꬔćå®ćć¾ćŁ©( 'Ļ' )Ł
ćć®čØäŗćę°ć«å „ć£ćććµćć¼ćććć¦ćæć¾ćććļ¼