javascript pentru pisici
o introducere pentru noi programatori
atât de simplu încât chiar și prietenul tău uman poate face, de asemenea,!
JavaScript este un limbaj de programare sau, cu alte cuvinte, un mijloc prin care computerul este instruit să facă lucrurile. Așa cum oricare dintre noi controlează oamenii cu fluiere și miau, se poate controla computerele cu declarații scrise într-un limbaj de programare. Toate browserele web înțeleg JavaScript și puteți profita de faptul că pentru a face pagini web face lucruri nebunești!
JavaScript a început ca o modalitate de a face mai multe pagini web interactive. În prezent, JavaScript rulează nu numai în browsere – rulează și pe servere web, telefoane și chiar roboți! Această pagină vă va arăta o bază JavaScript, astfel încât să puteți porni instantaneu *.
* Timpul real Tutorial: mai mult decât instantanee. Probabil o oră sau două. De asemenea, pe măsură ce sunteți o pisică, ar trebui să fiți aruncați mai mult la soare decât să alergați.
Cuprins
- Baza
- Strings
- Valori și variabile
- Utilizarea funcțiilor
- Funcții lingvistice
- Codul terț
- Creare Funcții noi
- Cicluri
- obiecte
- obiecte
- apeluri
- recomandat citire
Nu fiți o pisică înfricoșătoare
Veți cădea întotdeauna în picioare – chiar și programarea! Spre deosebire de lovirea unui pahar de apă pe laptop, nu există nimic în aceste tutoriale care vă vor deteriora calculatorul în nici un fel, chiar dacă scrieți prost o comandă sau faceți clic pe un buton greșit. Ca pisicile, programatorii fac greșeli tot timpul: scrierea de erori, uitarea ghilimelelor sau cheile și uitați cum funcționează câteva funcții de bază. Programatorii se îngrijorează mai mult despre a face lucrurile să lucreze în cele din urmă în loc să încerce să lucreze prima dată când sunt scrise. Cel mai bun mod de a învăța este prin comiterea de erori!
De aceea nu trebuie să fii o pisică înfricoșătoare! Cel mai rău lucru care se poate întâmpla este că trebuie să reîmprospătați această pagină în browserul dvs. web dacă sunteți blocat. Nici nu vă faceți griji, acest lucru se întâmplă foarte rar.
# Baza
Există JavaScript care rulează în această pagină în acest moment. Să jucăm puțin cu asta. Pentru simplitate, voi presupune că utilizați Google Chrome pentru a citi această pagină (dacă nu va fi probabil mai ușoară atât dacă urmați tutorialul folosind Chrome).
În primul rând, faceți clic pe Chiar Orice parte a ecranului și selectați Inspectarea elementului (sau inspectați elementul în limba engleză), apoi faceți clic pe fila care spune consola. Ar trebui să vedeți un lucru care arată astfel:
Aceasta este o consolă, numită și „linia de comandă” sau „terminale „. Practic, este o modalitate de a scrie un lucru la un moment dat pe computer și imediat obțineți răspunsul. Există instrumente super-utile de învățare (încă folosesc consola aproape în fiecare zi i scriu cod).
Consola face unele lucruri foarte bune. Am început să scriu ceva și consola ajută să-mi dați o listă a tuturor lucrurilor posibile pe care le pot continua să scriu! Un alt lucru pe care îl puteți face este să scrieți iv id = „b0cc569177” pe consola și apoi apăsați Enter
și a vedea ce se întâmplă.
Folosind Consola este o parte importantă la învățarea JavaScript. Dacă nu știți cum funcționează ceva sau comanda servește pentru ce, puteți merge la consola și puteți afla! Următorul este un exemplu:
# șiruri de caractere
ca sunt o pisică pe care vreau să o înlocuiesc în fiecare instanță a cuvântului perro
pe Internet cu . Mai întâi mă duc la consola și scriu câteva fraze care conțin cuvântul perro
cel puțin o dată. În JavaScript un set de litere, numere, cuvinte sau orice altceva este cunoscut ca un șir (sau șir de caractere). Corzile ar trebui să înceapă și să termine cu un citat. Nu contează cum să utilizați o singură cotă '
sau dublu "
, atâta timp cât utilizați același simbol la început și la Sfârșit.
iv id = „e276db1ce9”
Vedeți mesajul oribil de eroare? Nu vă faceți griji – nu ați rupt nicio lege. Syntax Error ILLEGAL
este ca și cum suna atunci când un robot înseamnă că programul dvs. are o problemă. Primele două propoziții coincid cu tipul de comod utilizat la începutul și la sfârșitul propoziției, dar când o amestecăm computerul online, este ca și amestecarea pepene verde cu vinul.
OK, pentru a repara una dintre aceste afirmații (înlocuind perro
pentru versiunea noastră îmbunătățită) trebuie să salvăm mai întâi declarația originală pentru a putea să-l apelați din nou când Facem înlocuirea magică. Vedeți cum șirul este repetat în roșu când scriu pe consola? Acest lucru se datorează faptului că nu am spus că sentința este salvată oriunde și de aceea nu le returnează (sau ne dă o eroare atunci când facem o eroare).
# Valori și variabile
Valorile sunt cele mai simple componente din JavaScript. 1
este o valoare, true
(reprezentând o valoare logică) este o valoare, "hola"
este o valoare, function() {}
este o valoare, lista continuă! Există multe tipuri de valori în JavaScript, dar nu avem nevoie să le cunoaștem pe toți acum – veți afla în mod natural, în timp ce scribii de cod!
Pentru a salva valorile pe care le folosim apelurile variabile. Cuvântul „variabil” înseamnă „se poate schimba” și este utilizat deoarece variabilele pot salva diferite tipuri de valori și pot schimba valoarea lor de mai multe ori. Variabilele sunt destul de similare cu o cutie poștală. Am pus ceva într-o variabilă, ca o propoziție, apoi oferim variabila o adresă pe care o puteți folosi pentru a găsi această propoziție mai târziu. În cutiile poștale din viața reală au nevoie de numere de cod poștale, dar în JavaScript sunt înlocuite de obicei cu litere mici sau numere fără spații.
var
este o abreviere a variabilei și simbolul iv id = „3ccb35b789”. Aceasta înseamnă salvează lucrul din partea dreaptă din partea stângă. În plus, după cum puteți vedea, acum că ne salvăm sentința într-o variabilă, consola nu returnează propoziția, dar ne dă undefined
ca răspuns, ce înseamnă acolo Nu este nimic de revenit.
Dacă pur și simplu scrieți numele unei variabile în consola, valoarea salvată în acea variabilă va fi tipărită. O notă despre variabile este că, în mod implicit, acestea sunt pierdute când treceți la o pagină diferită. Dacă ar fi reîmprospătarea paginii din Chrome, de exemplu, variabila mea sentenciaPerro
ar dispărea pentru totdeauna, ca și cum nu ar fi existat niciodată. Dar nu vă faceți griji cu privire la acest lucru prea mult – puteți strânge săgețile în sus și în jos pe tastatură atunci când vă aflați pe consola și obțineți declarațiile pe care le scrieți în ultima vreme.
# Folosind funcții
Acum că avem propoziția noastră salvată într-o variabilă, vom schimba cuvântul salvat în ea! Putem face acest lucru prin crearea unei funcții. Funcțiile sunt un tip de valoare care face doar o funcție specifică (cunoscută și ca scop sau acțiune) de către noi. Apelându-le „acțiuni” sună ciudat și cred că de aceea au ales „funcția”.
JavaScript are o funcție numită replace
(înlocuiți în limba engleză) exact ce noi vrem! Funcțiile iau valori în paranteze (zero, unul sau mai multe) și returnează sau orice altceva (undefined
) sau șirul modificat. Funcția replace
este disponibilă pentru utilizare pe orice șir și ia 2 valori: caracterele pe care vrem să le scoatem și personajele care le vor înlocui. Ea devine puțin confuză pentru a descrie aceste lucruri, astfel încât avem un exemplu vizual:
note ca valoare a sentenciaPerro
este același chiar după ce rulează replace
despre asta? Acest lucru se datorează faptului că funcția replace
, (și cele mai multe funcții JavaScript în aceste scopuri) iau valoarea pe care o oferim și returnând o nouă valoare, fără a modifica valoarea pe care am trecut-o. Așa cum nu vrem să salvăm rezultatul (nu există =
în partea stângă a operației de înlocuire) Valoarea returnată este imprimată pe consola.
# Funcțiile limbii
Trebuie să vă solicitați că alte funcții sunt disponibile în JavaScript. Răspunsul: Multe. Există multe biblioteci standard integrate despre care puteți învăța în MDN (un site Mozilla care are multe informații despre tehnologiile web). De exemplu, aici este pagina MDN cu privire la funcțiile referitoare la matematica JavaScript.
# Cod terț
Există, de asemenea, o mulțime de cod JavaScript disponibil care nu face parte din standard bibliotecă. De obicei, se face referire la JavaScript scrise de al treilea ca o „bibliotecă” sau „plugin”. Unul dintre favoritele mele este numit subliniere.js. Să mergem să o găsim și să o încărcați pe pagina noastră!Mai întâi mergeți la site-ul de subliniere, http://underscorejs.org/, faceți clic pe link-ul de descărcare (în general, folosesc versiunea de dezvoltare deoarece sunt ușor de citit, dar oricare dintre cele 2 vă va da Aceeași funcționalitate) și copiați tot codul în clipboard (puteți utiliza selectați toate făcând clic dreapta). Apoi îl țin în consola dvs. și apăsați pe Enter. Acum, browserul dvs. are o nouă variabilă: _
. Undercore vă oferă o mulțime de funcții utile pentru a juca. Să învățăm cum să le folosim mai târziu.
# Crearea de noi funcții
Nu vă limitați la Folosind funcții ale altora – le puteți scrie și ele. E foarte simplu! Să facem o funcție numită ponerleOnda
care adaugă unele puncte de exclamare la sfârșitul unui șir.
DIV id = „6748C53BF8”>
în mine Capul pe care l-am citit cu voce tare ca: „Există o funcție numită” pus pe ea „, care ia un șir și returnează o nouă copie a șirului care are unele puncte de exclamare la sfârșit”. Acesta este modul în care scriu acest lucru pe consola manual fără a scrie funcția:
expresia string + !!!!
Returnează un șir nou și variabila noastră numită string
rămâne la fel ca înainte (deoarece nu o actualizăm niciodată folosind =
).
Să ne folosim funcția în loc să o fac manual. În primul rând, lipiți funcția pe consola și apoi apelați funcția prin trecerea unui șir:
Puteți de asemenea să-i sunați funcția Trecerea unei variabile care indică un șir (în exemplul de mai sus, scriem șirul direct ca valoare în loc de salvare ca o primă variabilă):
linia ponerleOnda(sentencia)
este echivalent cu a spune sentencia + '!!!!'
. Ce se întâmplă dacă vrem să modificăm în loc (cunoscut sub numele de actualizare) valoarea declarației? Pur și simplu salvează valoarea de returnare a funcției în variabila sentencia
var sentencia = "hora de la siesta"sentencia = ponerleOnda(sentencia)
acum sentencia
va avea semnele de exclamare la sfârșit! Realizați că ați folosit numai var
când ați inițializat variabila – prima dată când l-ați folosit. Apoi, nu ar trebui să utilizați var
dacă doriți re-inițializarea (resetați / curățați / goliți) variabila.
Ce se întâmplă dacă luăm return
al funcției?
iv id = „ad317cc0f7”
De ce sentencia
Este goală? Deoarece funcțiile revin undefined
în mod implicit! Puteți alege să returnați orice valoare utilizând return
. Funcțiile trebuie să ia o valoare și, dacă schimbă valoarea sau creează una nouă care va fi utilizată mai târziu, devuelven
O valoare (curiozitate: un termen rece pentru acest stil este Programare funcțională). Aici avem o altă funcție care nu returnează nici o valoare, ci utilizează o altă metodă pentru a ne arăta rezultatul: „FF7D6C8664”>
această funcție, gritalo
, utilizați funcția noastră ponerleOnda
și metoda nativă de tifon de șir. Metodele sunt doar un nume pentru o funcție atunci când aparține ceva – în acest caz toUpperCase
este o funcție care aparține String
atunci că suntem o metodă sau o funcție. ponerleOnda
nu aparține nimănui, atunci ar fi incorect din punct de vedere tehnic să se refere la aceasta ca o metodă (este confuză, SE).
ultima linie de Funcția este o altă funcție nativă care preia pur și simplu valori pe care le dați și le imprimați pe consola.
atunci există Ceva în neregulă cu această funcție gritalo
? Depinde! Există 2 tipuri principale de funcții:
- funcții care modifică sau creează valori și le returnați
- funcții care iau valori și fac lucruri cu ele care nu pot să fie returnat
console.log
este un exemplu al celui de-al doilea grup: Imprimă lucrurile în consola dvs. – o acțiune pe care o puteți vedea cu ochii tăi, dar nu poate fi reprezentată ca o valoare JavaScript. Propria mea regulă de bază este de a încerca să păstrez cele două tipuri de funcții separate, astfel încât să putem rescrie gritalo
astfel:
function gritalo(string) { string = string.toUpperCase() return ponerleOnda(string)}console.log(gritalo("no le temo a los humanos"))
în acest fel gritalo
devine mai generic, adică, face unul sau două lucruri simple și nu știu nimic despre imprimarea consolei – acea parte poate fi întotdeauna programată După, în afara definiției funcției.
# Cicluri
Acum că avem abilități de bază în centura noastră (nota autorului: Poate că pisici folosesc curele?) Putem începe să fim vagi . Ce?! Da, aceasta este: Programarea este despre a fi vagă.Larry Wall, inventator al limbajului de programare Perl, numit vagabonta cea mai mare virtute a unui programator bun. Dacă calculatoarele nu au existat, ar fi trebuit să faceți tot felul de sarcini plictisitoare, dar dacă învățați să vă programați, vă puteți arunca în soare toată ziua în timp ce un computer undeva rulează programele pentru dvs. Este un stil de viață glorios plin de relaxare!
Ciclurile sunt una dintre cele mai importante modalități de a stoarce puterea computerului. Amintiți-vă Underscore.js
cu ceva timp în urmă? Asigurați-vă că l-ați încărcat pe pagină (amintiți-vă: puteți utiliza întotdeauna săgeata în sus de câteva ori și să strângeți Enter
pentru ao încărca din nou dacă aveți nevoie de ea) și încercați să copiați și lipiți acest lucru în consola:
function imprimirNumero(unNumero) { console.log(unNumero)}_.times(10, imprimirNumero)
Acest cod utilizează metoda TimesCore Times care ia un număr și o funcție, porni 0 și pentru 10 pași am, Apelarea funcției cu numărul la fiecare pas.
Dacă ar fi trebuit să facem manual ceea ce face times
ar fi astfel:
imprimirNumero(0)imprimirNumero(1)imprimirNumero(2)imprimirNumero(3)imprimirNumero(4)imprimirNumero(5)imprimirNumero(6)imprimirNumero(7)imprimirNumero(8)imprimirNumero(9)
Dar pisicile refuză să facă o muncă manuală inutilă, atunci, atunci ar trebui să ne întrebăm întotdeauna” Facem acest lucru este cel mai vag mod posibil? „
Atunci de ce este acest ciclu ciclizat? Gândiți-vă astfel: dacă a trebuit să scriem o listă de 10 numere (de la 0 la 9), folosim o serie de JavaScript ar arăta astfel:
var ceroADiez =
Îi times
este într-adevăr vizitați fiecare număr și repetați sarcina: în exemplul de mai sus sarcina a fost de a apela funcția imprimirNumero
cu numar curent. Repetați sarcinile în acest fel se numește un ciclu pe matrice.
# Arrays
i-am menționat de câteva ori, dar petrecem un minut de învățare despre ei. Imaginați-vă că aveți nevoie pentru a vă urmări prietenii. Ei bine, o matrice o va face bine. Gândiți-vă la o matrice ca o listă ordonată în care puteți menține o mulțime de lucruri înăuntru.
Acesta este modul în care faceți unul:
iv id = „64b224198b”
Mare! Acum aveți o listă a prietenilor dvs. de pisici.
elementele (acesta este modul în care numiți un element de matrice) sunt salvate în matrice începând cu 0 și numărarea în sus. Apoi iv id = „bd2557450c” returnează felix
și misAmigosGatos
returns sessa
… etc etc.
Pentru a obține un prieten de la noua dvs. matrice, puteți să-l accesați direct așa:
ivid id = „4d110d79f5”
Dacă ați făcut un nou prieten la Clubul Gatuno la modă, iar tu doriți să-l adăugați în lista dvs. este super simplu: misAmigosGatos.push("gato de moda")
.
Pentru a verifica dacă noua pisică este în interiorul matricei dvs. Puteți utiliza .length
:
Ați observat că push
a returnat dimensiunea? Bun! De asemenea, ia notă de faptul că marginea păstrează întotdeauna ordinea, ceea ce înseamnă că își vor aminti ordinea în care ați adăugat sau ați definit lucrurile. Nu totul în JavaScript conservă ordinea astfel încât să-ți amintești această proprietate specială a matricei!
obiecte
Arrays sunt bune pentru minciună, dar pentru alte sarcini poate fi greu de lucrat ei. Luați în considerare gama noastră de prieteni felini. Ce se întâmplă dacă doriți să salvați mai mult decât numele?
var misAmigosGatos = var apellidos = var direcciones =
este uneori bun pentru a avea toate adresele sau numele într-o variabilă. Dar, uneori, aveți o pisică în minte, spuneți Felix și doriți să căutați adresa dvs. Cu arrays are un loc de muncă întreg pentru că nu-i puteți spune „Che Array, dă-mi adresa lui Felix” pentru că „Felix” se află pe o matrice și adresa ei într-un alt total diferit.
Acest lucru poate fi fragil deoarece matricele noastre se schimbă și adaugă o nouă pisică la început Putem actualiza și variabila posicionDeFelix
indicat la noua locație a informațiilor despre Felix în aranjamente! Aici arată o modalitate mai ușoară de a păstra informațiile salvate folosind obiecte:
var primerGato = { nombre: "felix", apellido: "el gato", dirección: "La calle" }var segundoGato = { nombre: "sessa", lastName: "gato", direccion: "Liniers" }var tercerGato = { nombre: "garfield", apellido: "gato", direccion: "Casa de John Bonachón" }
De ce am face acest lucru? Pentru că acum avem o variabilă pentru fiecare pisică pe care o putem folosi atunci când vine vorba de a obține valorile pisicilor într-un mod mai convenabil și mai citit.
Puteți să vă gândiți la obiecte ca cheile de la un keychain. Fiecare dintre ele este pentru o anumită ușă și dacă aveți etichete frumoase pe tastele dvs., puteți deschide ușile foarte repede. De fapt, lucrurile din partea stângă a :
sunt apeluri cheie (ele sunt, de asemenea, cunoscute ca proprietăți) și lucrurile din partea dreaptă sunt numite valori.
// un objeto con una sola clave llamada 'nombre' y un solo valor 'felix'{ nombre: 'felix' }
Atunci de ce să utilizați arrays dacă putem pune toate informațiile noastre despre obiecte? Deoarece obiectele nu-și amintesc ordinea cheilor pe care le faceți.Puteți introduce un obiect în acest fel:
{ fecha: "20/10/2012", diario: "hoy dormí un poco", nombre: "Carlos" }
Dar calculatorul poate returna după cum urmează:
{ diario: "hoy dormí un poco", nombre: "Carlos", fecha: "20/10/2012" }
sau așa!
{ nombre: "Carlos", diario: "hoy dormí un poco", fecha: "20/10/2012" }
Prin urmare, nu puteți avea încredere în ordinea cheilor obiecte. Dacă doriți să faceți ceva foarte mare, puteți face o matrice plină de obiecte sau o obiecte de matrice!
var archivoDeAnimo = // ordenados de menos a más por favoritismovar favoritos = { golosinas: , lugaresSiesta: }
atunci când combinați lucruri diferite de acest lucru Structuri de date, cum ar fi Legos!
# apelare
apelurile de apel nu sunt într-adevăr o caracteristică JavaScript, cum ar fi Objetos
sau Arrays
, dar o modalitate de a folosi funcții. Pentru a înțelege de ce sunt utile, mai întâi trebuie să învățăm despre programarea asincronă (numită și Async). Codul asincron este prin definiție scrisă într-un mod care nu este sincron. Codul sincron este ușor de înțeles și de scriere. Acest exemplu ilustrează:
divid id = „08bd2999b3”>
Acest cod pseudo-sincron descărcați o fotografie adorabilă a unei pisici, încărcați fotografia la Twitter și generează un Tweet cu fotografia pentru @maxogden
. Destul de simplu!
(nota de autor: Me, @Maxogden, fericit accept fotografii de pisici de Twitter.)
Acest cod este sincron pentru a încărca fotografia la Tweet, descărcare de la Fotografia trebuie completată. Aceasta înseamnă că pe linia 2 nu se poate rula până când sarcina liniei 1 este complet finalizată. Dacă am fi implementat acest cod Pseudo, vrem să fim siguri că executarea „blocului” „bloc” până când descărcarea este finalizată, împiedicând orice alt JavaScript să fie executat până la capăt, de asemenea Ca atunci când descărcarea este completă, execuția JavaScript este deblocată și linia 2 este executată.
Codul sincron este bine pentru lucruri rapide, dar este oribil pentru lucrurile care necesită economisirea, încărcarea sau descărcarea. Ce se întâmplă dacă serverul coborâți fotografia este lent sau conexiunea la Internet pe care o utilizați este lentă sau computerul în care executați codul are multe file cu videoclipuri de pisici pe YouTube, care este lent? Aceasta înseamnă că poate dura câteva minute de așteptare până când linia 2 este executată. Între timp, deoarece toate JavaScript de pe pagină este blocat de descărcare, pagina va îngheța în totalitate, care rulează fără răspuns până la sfârșitul descărcării.
Execuția de blocare trebuie evitată la toate costurile, mai ales când Faceți-vă înghețarea programului sau deveniți inutilizabili. Presupunem că fotografia de mai sus are o secundă pentru a descărca. Pentru a ilustra cât de mult este o secundă pentru un computer modern, aici este un program care testează câte sarcini JavaScript putem procesa într-o secundă.
iv id = „89b8d81c7f”
copie și Lipiți codul de mai sus pe consola dvs. JavaScript și după o secundă ar trebui să imprimați un număr. Pe calculatorul meu văd 8527360
, aproximativ 8,5 milioane. Într-un al doilea JavaScript puteți apela sumaUno
8,5 milioane de ori! Deci, dacă aveți un cod sincron prin descărcarea unei fotografii, iar fotografia are o secundă, înseamnă că vă împiedicați executarea de 8,5 milioane de operații în timp ce JavaScript este blocat.
Unele limbi au o Funcția numită Blocarea executării cu un număr de secunde. De exemplu, există un cod de bash
rulează Terminal.app
pe Mac OS că utilizările sleep
. Când executați comanda sleep 3 && echo 'me desperté'
bloc timp de 3 secunde înainte de imprimare me desperté
JavaScript nu are o funcție iv id = „8A580bb9bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb_. Pe măsură ce sunteți o pisică, probabil că întrebați: „De ce învăț un limbaj de programare care nu văd somnul?” Dar nu plecați. În loc de a depinde de sleep
Pentru a aștepta ca lucrurile să se întâmple, designul JavaScript încurajează utilizarea funcțiilor. Dacă trebuie să vă așteptați ca sarcina A înainte de a începe sarcina B, puneți tot codul de sarcină B într-o funcție și flacără numai când ați terminat.
De exemplu, acesta este blocarea codului:
a()b()
și acest lucru nu este blocat:
a(b)
în versiunea non-blocker, b
este un invers al a
. În versiunea de blocare și b
sunt 2 numite / invocate (cele două au ()
Care execută imediat funcțiile). În versiunea non-blocată veți observa că numai a
este invocat și b
este pur și simplu ultima în a
ca argument.
În versiunea de blocare nu există o relație explicită între a
și iv id = „0980ced915” . În versiunea non-blocată, lucrarea de a
este de a face ceea ce aveți nevoie și apoi să apelați b
când se termină. Folosirea funcțiilor în acest mod se numește apeluri de apeluri deoarece funcția dvs. de apel invers, în acest caz b
, se numește atunci când a
terminați să faceți ceea ce aveți nevoie .
aici există un pseudocod cu implementarea modului în care ar trebui să vedeți a
:
iv id = „7b6b82c79f”
Să ne întoarcem la exemplul nostru non-blocant, a(b)
, unde sunăm a
și o vom transmite b
ca prim argument. În definiția funcției de mai sus, argumentul fin
este funcția noastră b
Ce sa întâmplat cu el. Acest comportament este greu de înțeles la început. Când apelați o funcție, argumentele pe care le cheltuiți nu vor avea neapărat aceleași nume variabile că atunci când se află într-o funcție. În acest caz, ceea ce numim b
este fin
în cadrul funcției. Dar b
și fin
sunt doar nume variabile care indică aceeași funcție de bază. De obicei, funcțiile de callback sunt etichetate cu nume precum fin
sau callback
Pentru a clarifica faptul că aceste funcții ar trebui să fie numite atunci când funcția curentă se termină Lucru 58A6ede625 „> și b
sunt numite în versiunile blocate și blocate. Diferența este că în versiunea non-blocantă nu blochează execuția JavaScript. În general, stilul non-blocare este locul în care scrieți orice funcție pentru a reveni cât mai repede posibil, fără a fi blocat în orice moment.
pentru a merge puțin mai adânc: dacă a
Luați o secundă pentru a finaliza și folosiți versiunea blocată, înseamnă că puteți face un singur lucru. Dacă utilizați versiunea non-blocker (utilizând apelurile de apel), puteți avea literalmente milioane de alte lucruri în aceeași secundă, ceea ce înseamnă că vă puteți termina munca de milioane de ori mai repede și să dormiți restul zilei.
Amintiți-vă: programul este vorba despre a fi vagă și ar trebui să fiți cel care doarme și nu cu computerul dvs.
cu noroc puteți vedea acum modul în care apelurile sunt doar funcții care apelează alte funcții după un asincron sarcină. Unele exemple clasice de sarcini asincrone citesc o fotografie, descărcând o melodie, încărcând o fotografie, vorbind cu baza de date, așteptați ca un utilizator să apasă o tastă sau faceți clic pe un link etc. Orice nevoie de timp. JavaScript este o mare manipulare a sarcinilor asincrone, cum ar fi acelea atâta timp cât petreceți timp pentru a afla cum să utilizați apeluri și păstrați-vă JavaScript departe de a fi blocat.
sfârșitul
Acesta este doar Începutul relației dvs. cu JavaScript! Nu puteți învăța totul, dar puteți căuta să lucrați pentru dvs. și să încercați să aflați toate conceptele aici.
Vă recomandăm să reveniți mâine și să faceți totul din nou de la început! Puteți lua câteva treceri până când înțelegeți totul (programul este dificil). Doar încercați să evitați să citiți această pagină în sferturi care conțin obiecte luminoase … pot fi incredibil de distractive.
Aveți orice alt subiect pe care doriți să îl acoperiți? Deschide o problemă pentru el în Github.
# Reading recomandat
javascript pentru pisici salte multe detalii care nu sunt importante pentru a începe (pisicile nu sunt renumite pentru atenția lor), dar Dacă simțiți că trebuie să învățați în profunzime:
Traducător Notă: Informațiile despre următoarele link-uri sunt în limba engleză. Din păcate, bibliografia este limitată în limba spaniolă. Luați-l ca o scuză bună pentru a afla o nouă limbă (în plus față de JavaScript)
- nodeschool.io este un software educațional open source gestionat de comunitate care învață diferite domenii de dezvoltare web într-un interactiv format și auto-ghidat. Am ajutat la nodeschool! Din păcate, acest site are mai puține pisici.
- Elocant JavaScript este o carte gratuită care te învață JavaScript! Este foarte bun! Mai ales capitolul numit valori, variabile și flux de control
- javascript mozilla Ghid are, de asemenea, un capitol excelent numit valori, variabile și literali
- js ghida de stil standard este un
"zero configuration" linter
pentru stilul JavaScript pe care îl folosesc.
# clientes satisfece
jsforcats.com es trabajo en progreso con amor de @maxogden. Si Quieres contribuind conținut de materiale y mejorarlo, el repo de github está por.
iv id = „2da7bcf3b1”
EL Traductor @impRonCiable También Es Amigo de Algunos Gatos
Div ID = „2DA7BCF3B1”> 48C4CF67CD „> Consola