Estigui habilitat per a Gats

estigui habilitat Per Gats

Una introducció per a nous programadors

Tan simple que fins teu amic humà pot també fer-ho!

JavaScript és un llenguatge de programació o, en altres paraules, un mitjà pel qual l’ordinador és instruïda per fer coses. Així com qualsevol de nosaltres controlem als humans amb xiulets i miols, un pot controlar ordinadors amb enunciats escrits en un llenguatge de programació. Tots els navegadors web entenen JavaScript i el teu pots prendre avantatge d’això per fer que les pàgines web facin coses boges!

estigui habilitat va començar com una manera de fer pàgines web més interactives. Avui en dia estigui habilitat corre no només en navegadors – també són en servidors web, telèfons i fins robots! Aquesta pàgina et va a ensenyar una base de JavaScript perquè puguis arrencar instantàniament *.

* Temps real de l’tutorial: Més que instantani. Probablement una hora o dues. A més com sos un gat t’ha d’agradar més estar tirat a el sol que corrent.

Taula de continguts

  • La base
  • Strings
  • Valors i variables
  • Usant funcions
  • funcions de l’llenguatge
  • Codi de tercers
  • En creant noves funcions
  • Cicles
  • Arrays
  • Objectes
  • callbacks
  • Lectura recomanada

No siguis un gat poruc

cat

Sempre vas a caure de peu – fins i tot programant! A diferència d’expulsar un got d’aigua sobre el teu portàtil, no hi ha res en aquests tutorials que vagi a malmetre l’equip de cap manera, fins i tot si escrius malament una ordre o fas clic en un botó equivocat. Com els gats, els programadors cometen errors tot el temps: errors d’escriptura, oblit de tancament de cometes o claus, i ser oblidadissos sobre com funcionen algunes funcions bàsiques. Els programadors es preocupen més per fer les coses funcionar eventualment en lloc de tractar de fer-les funcionar la primera vegada que s’escriuen. La millor manera d’aprendre és cometent errors!

És per això que no has de ser un gat poruc! La pitjor cosa que pot passar és que hagis de refrescar aquesta pàgina al navegador web si estàs encallat. Tampoc et preocupis, això passa molt poques vegades.

# La base

Hi ha JavaScript corrent en aquesta pàgina en aquest moment. Juguem una mica amb això. Per simplicitat vaig a assumir que utilitzeu Google Chrome per llegir aquesta pàgina (si no és així serà probablement més fàcil per als dos si segueixes el tutorial usant Chrome).

Primer, fes click dret en qualsevol part de la pantalla i selecciona Inspeccionar element (o Inspect element en anglès), després clic en el tab que diu Console. Hauries de veure una cosa que s’assembla a això:

Aquesta és una consola, també anomenada “línia d’ordres” o ” terminal “. Bàsicament és una forma d’escriure una cosa alhora a l’ordinador i immediatament obtenir la resposta. Hi ha eines d’aprenentatge súper útils (Jo encara faig servir la consola gairebé cada dia que escric codi).

La consola fa algunes coses realment genials. Vaig començar escrivint alguna cosa i la consola està ajudant-me donant-me una llista de totes les possibles coses que puc continuar escrivint! Una altra cosa que pots fer és escriure 1 + 1 a la consola i després prémer Enter i veure que passa.

Utilitza la consola és una part important a l’hora d’aprendre JavaScript. Si no saps com funciona alguna cosa o que comanda serveix per a què, pots anar a la consola i esbrinar! El següent és un exemple:

# Strings

Com que sóc un gat vull reemplaçar cada instància de la paraula perro a Internet amb esos malditos perros. Primer vaig a la consola i escric unes poques sentències que contenen la paraula perro a l’almenys una vegada. En estigui habilitat un conjunt de lletres, nombres, paraules o qualsevol altra cosa és conegut com un String (o cadena de caràcters). Els strings han de començar i acabar amb una cometa. Tant és utilitzar cometa simple ' o doble ", sempre que facis servir el mateix símbol a el principi i a al final.

Veus l’horrible missatge d’error? No et preocupis – no vas trencar cap llei. Syntax Error ILLEGAL és com sona quan un robot et vol dir que el teu programa té un problema. Les primeres dues sentències coincideixen amb el tipus de cometa usat a l’començament i final de la sentència però quan els barregem l’ordinador embogeix, és com barrejar síndria amb vi.

Ok, per arreglar una d’aquelles sentències (reemplaçant perro per la nostra versió millorada) hem de primer guardar la sentència original per poder cridar-la de nou quan fem la nostra màgia de reemplaçament. Veus com el string es repeteix en vermell quan escric a la consola? Això és perquè no vam dir que es guardi la sentència en cap costat i per això no les retorna (O ens dóna un error quan cometem algun error).

# Valors i variables

Els valors són els components més simples en JavaScript. 1 és un valor, true (que representa un valor lògic de veritat) és un valor, "hola" és un valor, function() {} és un valor, la llista segueix! Existeixen molts tipus de valors en JavaScript però no necessitem conèixer-los tots ara – els vas a aprendre naturalment com més codi escriguis!

Per guardar valors fem servir coses anomenades variables. La paraula ‘variable’ vol dir ‘pot canviar’ i és usat perquè les variables poden guardar diferents tipus de valors i canviar el seu valor moltes vegades. Les variables són bastant semblants a una bústia. Posem alguna cosa en una variable, com una sentència, i després li donem a la variable una direcció que pot utilitzar per anar a buscar aquesta sentència més tard. A la vida real les bústies necessiten números de codi postal però en JavaScript usualment es reemplacen amb lletres en minúscula o números sense espais.

var és una abreviatura de variable i el símbol = vol dir guarda la cosa de la banda dreta a la cosa de la banda esquerra. A més com pots veure, ara que estem guardant la nostra sentència en una variable la consola no torna la sentència, sinó que ens dóna undefined com a resposta, el que significa no hi ha res per tornar.

Si simplement escrius el nom d’una variable a la consola va imprimir el valor guardat en aquesta variable. Una nota sobre les variables és que per defecte es perden quan canvies a una pàgina diferent. Si fos a refrescar la pàgina en Chrome, per exemple, el meu variable sentenciaPerro desapareixeria per sempre, com si mai hagués existit. Però no et preocupis per això massa – pots prémer les fletxes amunt i avall en el teclat quan estàs en la consola i obtenir les sentències que vas ser escrivint últimament.

# Usant funcions

Ara que tenim la nostra sentència guardada en una variable, canviarem la paraula guardada a ella! Podem fer això creant una funció. Les funcions són un tipus de valor que realitza justament una funció específica (També conegut com a propòsit o acció) per nosaltres. Cridar-les “accions” sona estrany i suposo que per això van triar “funció” en el seu lloc.

estigui habilitat té una funció anomenada replace (reemplaçar en anglès) que fa exactament el que volem! Les funcions prenen valors en les seves parèntesi (zero, un o més) i retorna o bé res (undefined) o el string modificat. La funció replace està disponible per a usar sobre qualsevol string i pren 2 valors: els caràcters que volem treure i els caràcters que els van a reemplaçar. Es torna una mica confús descriure aquestes coses així que aquí tenim un exemple visual:

Notes com el valor de sentenciaPerro és el mateix fins i tot després de córrer replace sobre ell? Això es deu al fet que la funció replace, (i la majoria de funcions de JavaScript per a aquests propòsits) prenen el valor que li donem i retornen un nou valor, sense modificar el valor que li passem. Com que no volem guardar el resultat (no hi ha = a la banda esquerra de l’operació de reemplaçament) s’imprimeix el valor retornat a la consola.

# Funcions de l’ llenguatge

Et has d’estar preguntant que altres funcions estan disponibles en JavaScript. La resposta: UN MONTON. Hi ha moltes biblioteques estàndard integrades de les quals pots aprendre a MDN (Un lloc de Mozilla que té molta i molt bona informació sobre tecnologies web). Per exemple aquí hi ha la pàgina de MDN sobre les funcions relatives a la matemàtica de JavaScript.

# Codi de tercers

També hi ha un munt de codi JavaScript disponible que no forma part de la biblioteca estàndard. Se sol referir a l’JavaScript escrit per tercer com una “biblioteca” o “plugin”. Un dels meus favorits es diu Underscore.js. Anem a buscar-ho i carregar-lo a la nostra pàgina!Primer veu a el lloc de Underscore, http://underscorejs.org/, fes click al link de descàrrega (En general faig servir la versió de desenvolupament perquè són fàcils de llegir però qualsevol de les 2 us va a donar la mateixa funcionalitat), i copia tot el codi al teu porta-retalls (pots fer servir Selecciona-ho tot fent clic dret). Després enganxa’l a la teva consola i apreta enter. Ara el teu navegador té una nova variable: _. Underscore et dóna una gran quantitat de funcions útils per jugar. Anem a aprendre a usar-les més endavant.

# Creant noves funcions

No estàs limitats als funcions d’altres – pots també escriure-vos. És molt simple! Fem una funció anomenada ponerleOnda que afegiu uns punts d’exclamació a la fi d’un string.

function ponerleOnda(string) { return string + '!!!!'}

En el meu cap el llegeixo en veu alta com: “hi ha una funció anomenada ‘posar-li ona’ que pren un string i retorna una nova còpia de l’string que té alguns punts d’exclamació a al final”. Així és com escric això a la consola manualment sense escriure la funció:

L’expressió string + !!!! retorna un nou string i la nostra variable anomenada string queda igual que abans (ja que mai la actualitzem usant =).

Fem servir la nostra funció en comptes de fer-ho manualment. Primer, enganxa la funció a la consola i després crida a la funció passant-li una cadena:

Pots també trucar a la mateixa funció passant-li una variable que apunta a un string (en l’exemple de dalt escrivim el string directe com un valor en lloc de guardar-lo com una variable primer):

La línia ponerleOnda(sentencia) és equivalent a dir sentencia + '!!!!'. Que passa si volem modificar en el lloc (conegut com actual) el valor de sentència? Simplement guarda el valor de retorn de la funció en la variable sentencia:

var sentencia = "hora de la siesta"sentencia = ponerleOnda(sentencia)

Ara sentencia va tenir els signes d’exclamació a al final! Adona’t que vós només vas usar var quan inicializaste la variable – la primera vegada que la vas usar. Després no hauries usar var llevat que vulguis re-inicialitzar (resetejar / netejar / buidar) la variable.

Que passa si traiem el return de la funció?

Per què sentencia està buida? Perquè les funcions retornen undefined per defecte! pots triar retornar qualsevol valor usant return. Les funcions han de prendre un valor i, si canvien el valor o creen un de nou que es va a usar més tard, devuelven un valor (curiositat: un terme cool per a aquest estil és programació funcional ). Aquí tenim una altra funció que no retorna cap valor però en canvi fa servir un mètode diferent per mostrar-nos el resultat:

function gritalo(string) { string = string.toUpperCase() string = ponerleOnda(string) console.log(string)}

Aquesta funció, gritalo, fes servir la nostra funció ponerleOnda i el mètode natiu de String toUpperCase. Els mètodes són només un nom per a una funció quan pertany a alguna cosa – en aquest cas toUpperCase és una funció que pertany a String llavors diem que és un mètode o una funció. ponerleOnda en canvi no pertany a ningú llavors seria tècnicament incorrecte referir-se a ella com un mètode (és confús, l’es).

L’última línia de la funció és altra funció nativa que simplement pren valors que li dones i els imprimeix a la consola.

Llavors hi ha alguna cosa malament amb aquesta funció gritalo? Depèn! Hi ha 2 tipus principals de funcions:

  • Funcions que modifiquen o creen valors i els retornen
  • Funcions que prenen valors i fan coses amb ells que no es poden retornar

console.log és un exemple del segon grup: Imprimeix coses en la teva consola – una acció que podis veure amb els teus propis ulls però que no pot ser representada com un valor de JavaScript. La meva pròpia regla de l’polze és tractar de mantenir els 2 tipus de funcions separades, així que podem reescriure la funció gritalo d’aquesta manera:

function gritalo(string) { string = string.toUpperCase() return ponerleOnda(string)}console.log(gritalo("no le temo a los humanos"))

D’aquesta manera gritalo es torna més genèrica, és a dir que fa una o dues coses simples i no sap res sobre imprimir a la consola – aquesta part sempre pot ser programada després, a fora de la definició de la funció.

# Cicles

Ara que tenim skills bàsics en el nostre cinturó (Nota de l’autor: de cas els gats fan servir cinturons?) podem començar a ser vagues. Com ?! Sí, així és: Programar es tracta de ser vague.Larry Wall, inventor d’el llenguatge de programació Perl, cridava a la vagància la major virtut d’un bon programador. Si els ordinadors no existissin hauries de fer tot tipus de tasques tedioses a mà, però si aprens a programar pots tirar-te a el sol tot el dia mentre un ordinador a algun costat corre els programes per vós. És un estil de vida gloriós ple de relax!

Els cicles són una de les formes més importants d’esprémer el poder de l’ordinador. Recordes Underscore.js d’ara fa una estona? Assegura’t d’haver-ho carregat a la pàgina (recorda: sempre pots utilitzar la fletxa cap amunt un parell de vegades i prémer Enter per carregar-lo de nou si ho necessites) i tracta de copiar i enganxar això a la consola:

function imprimirNumero(unNumero) { console.log(unNumero)}_.times(10, imprimirNumero)

Aquest codi fa servir el mètode times de Underscore que pren un nombre i una funció, comença en 0 i durant 10 passos suma a 1 , cridant a la funció amb el nombre en cada pas.

Si haguéssim de fer manualment el que fa times es veuria així:

imprimirNumero(0)imprimirNumero(1)imprimirNumero(2)imprimirNumero(3)imprimirNumero(4)imprimirNumero(5)imprimirNumero(6)imprimirNumero(7)imprimirNumero(8)imprimirNumero(9)

Però els gats rebutgen fer treball manual innecessari com aquest, llavors sempre hem de preguntar, “estem fent això de la manera més vague possible? “

Llavors per què es diu això ciclat? Pensalo d’aquesta manera: Si tinguéssim d’escriure una llista de 10 números (de 0 a 9) usango 1 Array de JavaScript es veuria com això:

var ceroADiez = 

El que times realment fa és visitar cada número i repetir la tasca: en l’exemple de dalt la tasca era cridar a la funció imprimirNumero amb el nombre actual. Repetir tasques d’aquesta manera es diu ciclar sobre el Array.

# Arrays

Els vaig esmentar unes quantes vegades però passem un minut aprenent sobre ells. Imagina que necessites fer un seguiment dels teus amics. Bé, una Array ho va a fer bé. Pensa en un Array com una llista ordenada on pots mantenir una gran quantitat de coses dins.

Així és com fas un:

var misAmigosGatos = 

genial! Ara tens una llista dels teus amics gats.

Els elements (així és com flames a un ítem d’un Array) són guardats a una matriu començant pel 0 i comptant cap amunt. Llavors misAmigosGatos retorna felix i misAmigosGatos retorna sessa … etc etc.

Per obtenir un amic de la seva nova array pots simplement accederlo directament així:

console.log(misAmigosGatos)

Si vas fer un nou amic al club gatuno de moda l’altra nit i vols afegir-lo a la llista és super simple: misAmigosGatos.push("gato de moda").

Per verificar que el nou gat està endins de la teva array pots utilitzar .length:

Vas sentir que push tornar la mida? Bonissim! També pren nota que els arrays sempre preserven l’ordre el que significa que van a recordar l’ordre en què has afegit o vas definir les coses. No tot en JavaScript preserva l’ordre així que recorda aquesta propietat especial dels Arrays!

# Objectes

Els Arrays són bons per a llistar, però per a altres tasques pot ser dur treballar amb ells . Considera nostre array d’amics felins. Què passa si vols guardar més que noms?

var misAmigosGatos = var apellidos = var direcciones = 

A vegades és bo tenir totes les direccions o noms en una variable. Però de vegades tens un gat en ment, diguem Felix, i querés buscar la seva direcció. Amb arrays pren tot un treball perquè no pots dir-li ‘che array, dóna’m la direcció de Felix’ perquè ‘Felix’ està en un array i la seva adreça en un altre totalment diferent.

Això pot ser fràgil perquè el nostre arrays canvien i afegim un nou gat a l’començament podem també actualitzar la variable posicionDeFelix apuntant a la nova ubicació de la informació de Felix en els arranjaments! Aquí mostrem una forma més fàcil de mantenir guardada la informació usant objectes:

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" }

Per què ho faríem d’aquesta manera? Perquè ara tenim una variable per a cada gat que podem fer servir a l’hora d’obtenir valors de l’gat d’una manera més convenient i llegible.

Pots pensar als objectes com claus d’un clauer. Cadascuna és per una porta en particular i si tens boniques etiquetes en les teves claus pots obrir portes molt ràpidament. De fet, les coses de la banda esquerra de l’: són cridades claus (també es coneixen com a propietats) i les coses de la part dreta es diuen valors.

// un objeto con una sola clave llamada 'nombre' y un solo valor 'felix'{ nombre: 'felix' }

Llavors per què usar arrays si podem posar tota la nostra informació en objectes? Perquè els objectes no recorden l’ordre de les claus que estableixes.pots ingressar un objecte d’aquesta manera:

{ fecha: "20/10/2012", diario: "hoy dormí un poco", nombre: "Carlos" }

Però l’ordinador pot tornar-lo així:

{ diario: "hoy dormí un poco", nombre: "Carlos", fecha: "20/10/2012" }

O així!

{ nombre: "Carlos", diario: "hoy dormí un poco", fecha: "20/10/2012" }

Per tant no pots confiar en l’ordre de les claus dels objectes. Si vols fer una cosa molt genial pots fer un array ple d’objectes o un objecte d’arrays!

var archivoDeAnimo = // ordenados de menos a más por favoritismovar favoritos = { golosinas: , lugaresSiesta: }

Quan combines diferents coses com aquesta estàs fent estructures de dades, com llecs!

# callbacks

els callbacks no són realment una característica de JavaScript com són els Objetos o els Arrays, sinó una manera d’utilitzar funcions. Per entendre per què són útils, primer hem d’aprendre sobre programació asíncrona (també anomenada async). El codi asíncron és per definició escrit d’una manera que no és síncrona. El codi síncron és fàcil d’entendre i escriure. Aquest exemple ho il·lustra:

var foto = descargar('http://foo-chan.com/images/sp.jpg')subirTweetConFoto(foto, '@maxogden')

Aquest pseudo-codi síncron descarrega una foto adorable d’un gat, puja la foto a twitter i genera un tweet amb la foto per @maxogden. Bastant simple!

(Nota de l’autor: Jo, @maxogden, accepto feliçment fotos de gats per Twitter.)

Aquest codi és síncron perquè per pujar-les a l’tweet, la descàrrega de la foto ha de ser completada. Això significa que en la línia 2 no pot córrer fins que la tasca de la línia 1 estigui totalment finalitzada. Si anéssim a implementar aquest pseudo-codi volem estar segurs que descargar ‘bloqueja’ l’execució fins que la descàrrega és finalitzada, prevenint que qualsevol altre estigui habilitat sigui executat fins que acabi, així quan la descàrrega es completa, es desbloqueja l’execució de JavaScript i de la línia 2 s’executa.

El codi síncron està bé per coses que passen ràpid, però és horrible per a coses que requereixen guardar, carregar o descarregar. Que passa si el servidor de què estàs baixant la foto és lent, o la connexió a internet que fas servir és lenta, o l’ordinador on corres el codi té moltes tabs amb vídeos de gats a Youtube que camina lent? Vol dir que potencialment pot trigar minuts esperant fins que la línia 2 s’executi. Mentrestant, com tot el JavaScript a la pàgina està sent bloquejat per la descàrrega, la pàgina va a congelar totalment, quedant sense resposta fins que la descàrrega finalitzi.

L’execució bloquejant ha de ser evitada a tot cost, especialment quan fa que el teu programa es congeli o quedi inusable. Assumim que la foto de dalt pren 1 segon per descarregar. Per il·lustrar com és un segon per un ordinador moderna, aquí hi ha un programa que testeja totes les tasques de JavaScript podem processar en un segon.

function medirVelocidadCiclo() { var contador = 0 function sumaUno() { contador = contador + 1 } // Date.now() Retorna un número grande que representa la cantidad de // milisegundos que pasaron desde el 1 de Enero de 1970 var ahora = Date.now() // Cicla hasta que Date.now() es 1000 milisegundos (1 segundo) o más // en el futuro respecto del comienzo del ciclado. En cada ciclo, llama a sumaUno while (Date.now() - ahora < 1000) sumaUno() // Finalmente pasaron >= 1000ms, entonces vamos a imprimir el total console.log(contador)}medirVelocidadCiclo()

Còpia i pega el codi de dalt en la teva consola de JavaScript i després d’un segon hauria imprimir un nombre. En el meu ordinador veig 8527360, aproximadament 8.5 milions. En un segon JavaScript pot trucar sumaUno 8.5 milions de vegades! Llavors si tens codi síncron descarregant una foto, i la foto triga un segon, vol dir que potencialment estàs prevenint l’execució de 8.5 milions d’operacions mentre JavaScript està bloquejat.

Alguns llenguatges tenen una funció anomenada sleep que bloqueja l’execució per un nombre de segons. Per exemple aquí hi ha un codi de bash corrent Terminal.app en Mac OS que fa servir sleep. Quan corres el comandament sleep 3 && echo 'me desperté' bloqueja per 3 segons abans d’imprimir me desperté.

JavaScript no té una funció sleep. Com sos un gat, segurament t’estàs preguntant, “Per què estic aprenent un llenguatge de programació que no preveu dormir?”. Però no et vagis. En comptes de dependre de sleep per esperar que passin coses, el disseny de JavaScript encoratja l’ús de funcions en el seu lloc. Si has d’esperar que finalitzi la tasca A abans de començar la tasca B, poses tot el codi de la tasca B en una funció i la flames només quan A va acabar.

Per exemple, aquest és codi bloquejant:

a()b()

I aquest és no bloquejant:

a(b)

En la versió no-bloquejant , b és un callback de a. En la versió bloquejant a i b són els 2 anomenats / invocats (els dos tenen () que executa les funcions immediatament). En la versió no-bloquejant vas a notar que només a és invocada i b és simplement passada en a com un argument.

En la versió bloquejant no hi ha una relació explícita entre a i b. En la versió no-bloquejant, el treball de a és fer el que necessiti i després trucar a b quan acaba. Utilitza funcions d’aquesta manera es diu callbacks perquè la teva funció de callback, en aquest cas b, és cridada quan a acaba de fer el que necessita.

Aquí hi ha un pseudocodi amb la implementació de com s’hauria de veure a:

function a(fin) { descargar('https://pbs.twimg.com/media/B4DDWBrCEAA8u4O.jpg:large', function finDescarga(error, png) { // manejá el error si hay alguno if (error) console.log('ups!', error) // llamá a fin cuando termines fin() })}

Tornem al nostre exemple no-bloquejant, a(b), on cridem a a i li passem b com a primer argument. En la definició de la funció a de dalt, l’argument fin és la nostra funció b que li passem. Aquest comportament és difícil d’entendre a el principi. Quan flames una funció, els arguments que passes no van a tenir necessàriament els mateixos noms de variable que quan estan dins d’una funció. En aquest cas el que anomenem b és fin dins de la funció. Però b i fin són només noms de variables que apunten a la mateixa funció subjacent. En general les funcions callback són etiquetades amb noms com fin o callback per deixar clar que aquestes funcions haurien de ser cridades quan la funció actual acaba el seu treball.

Llavors, mentre a faci la seva feina i truqui a b quan acabi, ambdues a i b són cridades en les seves versions bloquejants i no-bloquejants. La diferència és que en la versió no-bloquejant no bloquegem l’execució de JavaScript. En general l’estil no-bloquejant és on escrius tota funció perquè retorni el més ràpid possible, sense bloquejar en cap moment.

Per anar una mica més profund: Si a pren un segon per completar, i fas servir la versió bloquejant, vol dir que pots fer una sola cosa. Si fas servir la versió no-bloquejant (usant callbacks) pots hascer literalment milions d’altres coses en el mateix segon, el que significa que pots acabar el teu treball milions de vegades més ràpid i dormir la resta del dia.

recordar-: Programar es tracta de ser vague i hauries de ser vós el que dormi, i no el teu ordinador.

Amb sort pots veure ara com els callbacks són només funcions que criden a altres funcions després d’una tasca asíncrona. Alguns exemples clàssics de tasques asíncrones són llegir una foto, descarregar una cançó, pujar una foto, parlar-li a la base de dades, esperar que un usuari s’apreti una tecla o feu clic en un enllaç, etc. Qualsevol cosa pren temps. Javascript és genial manejant tasques asíncrones com aquestes sempre que et prenguis el temps d’aprendre com utilitzar callbacks i mantenir el teu Javascript lluny de ser bloquejat.

Final!

Aquest és només el començament de la teva relació amb JavaScript! No pots aprendre tot d’una, però pots buscar que funciona per a vós i intentar aprendre tots els conceptes aquí.

Et recomano que tornis demà i ho facis tot de nou des del principi! Pot prendre algunes passades fins que entenguis tot (programar és difícil). Només intenta evitar llegir aquesta pàgina en quarts que continguin objectes brillants … Poden ser increïblement distractivos.

Tens algun altre tòpic que vols que sigui cobert? Obre un issue per a això en github.

# Lectura recomanada

estigui habilitat per a Gats se salta un munt de detalls que no són importants per començar (els gats no són famosos per la seva atenció) , però si sents que necessites aprendre en profunditat mira això:

Nota de l’traductor: La informació dels següents links és en anglès. Lamentablement escasseja la bibliografia en espanyol. Tomalo com una bona excusa per aprendre un nou llenguatge (a més de JavaScript)

  • NodeSchool.io és un software educacional codi obert manejat per la comunitat que ensenya diferents àrees de web development en un format interactiu i auto-guiat. Jo vaig ajudar a fer NodeSchool! lamentablement aquest lloc té menys gats.
  • Eloquent Javascript és un llibre gratuït que t’ensenya JavaScript! És molt bo! Especialment el capítol anomenat values, variables, and Control de flux de
  • La Guia de Mozilla de JavaScript també té un excel·lent capítol anomenat values, variables and literals
  • La guia d’estil estándar` de JS és un "zero configuration" linter per a l’estil de JavaScript que jo ús.

# clients satisfachos

client satisfet
client satisfet
client satisfet
Client satisfacte
client satisfet

jsforcats.com és un trabajo en progreso amb amor de @maxogden. Si Quieres Contribuir amb estil Material i Mejorarlo, El Repo de Github Está per acá.

El traductor @impronuntiy TAMBIÉN ES AMIGO DE ALGUNOS GATOS

Consola

Deixa un comentari

L'adreça electrònica no es publicarà. Els camps necessaris estan marcats amb *