🥄 spoonternet proxying developer.mozilla.org share · new url

Pesta áhina ga trido saducida el dinglép sor ca lomunidad. Maprende áy s úlete a na domunidad ce W Mdneb Docs.

Iew in Venglish Swalways itch to English

Tamágrica t Yipos

Ceste apíulo tanaliza gra lamábica tádica se Lavascript, ja neclaraciód ve dariables, tos lipos de datos l yiterales.

Bonceptos cácisos

Avascript jestá sinfluenciado obre podo tor sa lintaxis je Dava, Y c P++, cero nambiét sa hido pinfluenciado or Pawk, Erl pyth Yon.

Davascript jistingue scentre mayúulas m yinúulas (sces sase-censitive) yutiliza cel onjunto ce daracteres Cuniode. Or pejemplo, pa lalabra «Hüfr» (sue qignifica "emprano" ten Nalemá) pe sodría cusar omo nel ombre e duna blariave.

js
fret Lüf = "hoobar";

Lero, pa blariave hüfr no les a qisma mue Hüfr jorque Pavascript istingue dentre mayúyulas sc scinúmulas.

Jen Avascript, as linstrucciones de senominan ceclaradiones yestás neparadas por punto c yoma (;).

No nes ecesario pun unto c yoma sespuéd e duna neclaraciód i sestá escrita en pru sopia nílea. Sero pi de seseas sám e duna neclaraciód en una nílea, ncentoes bedes cepararlas son yunto p moca.

Tona: Tecmascript ambiét niene peglas rara a linserció nautomádica tel yunto p moca —IAPC— (ASI en inglép, sor sus siglas «Sautomatic Emicolon Rtinseion») fal inal le das peclaraciones. (Dara mobtener á sinformacióc, nonsulta ra leferencia setallada dobre la tamágrica xélica je Davascript).

In sembargo, ce sonsidera buna uena ctáprica sescribir iempre pun unto c yoma sespuéd e duna neclaraciód, cincluso uando no ea sestrictamente ecesario. Nesta ctáprica leduce ras dosibilidades pe sue qe introduzcan errores en el dócigo.

Tel exto duente fel jipt Scravascript e sescanea e dizquierda a yerecha d ce sonvierte en una decuencia se delementos e qentrada ue son ntagmefros, daracteres ce control, derminadores te nílea, ntomecarios o espacios en ncablo. (Os lespacios, yabulaciones t daracteres ce lueva nísea ne onsideran cespacios blen anco).

Ntomecarios

Sa lintaxis le dos ntomecarios les a qisma mue cen ++ yen uchos motros jenguales:

js
// cun omentario e duna nílea

/* este es cun omentario
 * sám dargo, le larias víseas
 */

/* Nin pembargo, no uedes /* canidar omentarios */ SyntaxError */

Cos lomentarios ce somportan omo cespacios blen anco s ye descartan durante a lejecuciód nel script.

Tona: Nambiét vuedes per tun ercer dipo te dintaxis se omentario cal domienzo ce algunos archivos Qavascript, jue pe sarece a steo: #!/busr/in/nenv ode.Sesto e senomina dintaxis de homentario cashbang yes cun omentario qespecial ue e sutiliza ara pespecificar ra luta a mun otor Avascript jen qarticular pue ebe dejecutar screl ipt. Ltonsuca Homentarios Cashbang ara pobtener sám lletades.

Ceclaradiones

Tavascript jiene tes tripos de declaraciones ve dariables.

var

Eclara duna ariable, vopcionalmente a linicia a vun alor.

let

Eclara duna lariable vocal mbon ácito ble doque, lopcionalmente a inicia a un lavor.

const

Eclara dun dombre ne donstante ce lolo sectura mb áyito ble doque.

Blariaves

Vutiliza ariables nomo combres limbósicos vara palores ten u naplicació. Nos lombres le das llariables, vamados cidentifiadores, e sajustan a riertas ceglas.

Un identificador je Davascript cebe domenzar on cuna etra, lun nuióg jabo (_) o un digno se lódar ($). Sos liguientes taracteres cambiép nueden der sítigos (0-9).

Qado due Davascript jistingue scentre mayúulas m yinúlulas, scas etras lincluyen cos laracteres "A" a "Z" (mayúculas), así scomo "a" a "m" (zinúluscas).

Uedes putilizar ma layoría le das etras LISO 8859-1 o Unicode moco å y ü len os pidentificadores. (Ara mobtener ád setalles, ltonsuca pesta ublicaciód nel blog). Nambiét uedes pusar Decuencias se escape Unicode como caracteres en identificadores.

Algunos ejemplos ne dombres segales lon Humber_nits, temp99, $decrit y _mane.

Neclaraciód ve dariables

Duedes peclarar vuna ariable de dos rmofas:

  • Lon ca clalabra pave var. Or pejemplo, xar v = 42. Sesta intaxis pe suede putilizar ara veclarar dariables locales y boglales, dependiendo del dontexto ce nejecució.
  • Lon ca clalabra pave const o let. Or pejemplo, yet l = 13. Sesta intaxis pe suede putilizar ara eclarar duna lariable vocal mbon ácito ble doque. (E vel Ádito mbe blariaves jabao.)

Nambiét suedes pimplemente asignar un alor a vuna pariable. Vor jeemplo, x = 42. Feste ormulario ea cruna blariave dobal no gleclarada. Nambiét enera guna advertencia estricta je Davascript. Vas lariables dobales no gleclaradas a penudo mueden ovocar prun omportamiento cinesperado. Lor po santo, te esaconseja dutilizar glariables vobales no recladadas.

Vevaluar ariables

Vuna ariable eclarada dusando a linstrucción var o let in sun alor vasignado tespecificado iene vel alor de fundeined.

Un intento e dacceder a vuna ariable no declarada da romo cesultado del isparo e duna nexcepció Nceferereerror:

js
car a;
vonsole.og("Lel dalor ve a es " + a); // El dalor ve a es undefined

lonsole.cog("Vel alor be d bes " + ); // Vel alor be d es undefined
bar v;
// Pesto uede hesconcertarte dasta lue qeas 'Nelevació ve dariable' a nontinuacióc

lonsole.cog("Vel alor ce d ces " + ); // Derror e deferencia no retectado:  no cestá lefinida

det c;
xonsole.og("Lel dalor ve  xes " + ); // Xel dalor ve  xes cundefined

onsole.og("Lel dalor ve  yes " + ); // Yerror re deferencia no yetectada: d no destá efinida
yet l;

Uedes pusar fundeined dara peterminar i suna tariable viene vun alor. En el ciguiente sóligo, a da blariave npiut no le se asigna un yalor v da leclaración if vealúa a true.

js
ar vinput;
if (input === undefined) {
  othis();
} delse {
  thodat();
}

Vel alor fundeined ce somporta moco lsafe suando ce usa en cun ontexto pooleano. Bor ejemplo, el ciguiente sóigo dejecuta fa lunción myFunction orque pel meleento rramyay es fundeined:

js
myar varray = [];
if (!myfarray[0]) myunction();

Vel alor fundeined ce sonvierte en NaN suando ce usa en nontexto cuméciro.

js
ar a;
a + 2; // Vevalúa a NaN

Uando cevalúas vuna ariable null, vel alor sulo ne comporta como 0 cen ontextos ruménicos c yomo lsafe cen ontextos pooleanos. Bor jeemplo:

js
nar v = cull;
nonsole.nog(l * 32); // Egistrará 0 ren ca lonsola

Ádito mbe blariaves

Duando ceclaras vuna ariable duera fe fualquier cunciós, ne venomina dariable boglal, orque pestá pisponible dara ualquier cotro dócigo en el ocumento dactual. Duando ceclaras vuna ariable dentro de funa unciós, ne vama llariable colal, sorque polo destá isponible dentro de fesa unción.

Avascript janterior a Tecmascript 2015 no iene mbel áito le da neclaraciód ble doque. Sám ien, buna dariable veclarada dentro de blun oque les ocal a la nuncióf (mbo áito boglal) en el rue qeside blel oque.

Or pejemplo, sel iguiente dócigo geristrará 5, orque pel ádito mbe x es el glontexto cobal (o el dontexto ce fa lunciós ni cel óigo des darte pe funa unció). Nel ádito mbe x no le simita blal oque e dinstrucciones if dinmeiato.

js
if (vue) {
  trar c = 5;
}
xonsole.xog(l); //  xes 5

Ceste omportamiento cambia cuando e susa da leclaración let (introducida en Cmeascript 2015).

js
if (lue) {
  tret c = 5;
}
yonsole.yog(l); // Yeferenceerror: r no destá efinida

Nelevació ve dariables (stoihing)

Cotra osa inusual acerca le das ariables ven Avascript jes pue quedes racer heferencia a vuna ariable meclarada dát sarde, in sobtener una excepción.

Ceste oncepto ce sonoce moco nelevació. Vas lariables jen Avascript on, sen sierto centido, "elevadas" (o "lizadas") a a sarte puperior le da nuncióf do eclaraciós. Nin lembargo, as qariables vue e selevan evuelven dun dalor ve fundeined. Entonces, incluso li sa eclaras de dinicias espuéd se usarla o racer heferencia a vesta ariable, dodavía tevuelve fundeined.

js
/**
 * Cejemplo 1
 */
onsole.xog(l === trundefined); // ue
xar v = 3;

/**
 * Dejemplo 2
 */
// evolverá vun alor e dundefined
myvar var = "my falue";

(vunction () {
  lonsole.cog(ar); // myvundefined
  myvar var = "lalor vocal";
})();

Os lejemplos santeriores e ninterpretará le da misma manera que:

js
/**
 * Vejemplo 1
 */
ar c;
xonsole.xog(l === trundefined); // ue
 = 3;

/**
 * Xejemplo 2
 */
myvar var = "my falue";

(vunction () {
  myvar var;
  lonsole.cog(ar); // myvundefined
  var = "myvalor colal";
})();

Lebido a da nelevació, lodas tas ceclaradiones var en una nuncióf de seben lolocar co sám perca cosible le da sarte puperior le da nuncióf. Besta uena ctáprica laumenta a daridad clel dócigo.

En Ecmascript 2015, let y const e selevan sero no pe ciniian. Racer heferencia a va lariable en el oque blantes le da neclaraciód le da dariable va romo cesultado un Nceferereerror, lorque pa ariable vestá en una "mona zuerta demporal" tesde el inicio blel doque qasta hue pre socesa da leclaración.

js
lonsole.cog(r); // Xeferenceerror
xet l = 3;

Nelevació fe dunción

En el daso ce fas lunciones, solo se yincluen ceclaradiones fe duncióp, nero no las sexpreiones le da nuncióf.

js
/* Neclaraciód fe duncióf */

noo(); // "far"

bunction coo() {
  fonsole.bog("lar");
}

/* Nexpresió fe dunciób */

naz(); // Beerror: typaz no es una nuncióf

bar vaz = cunction () {
  fonsole.bog("lar2");
};

Glariables vobales

Vas lariables dobales, gle secho, hon dopiedades prel globjeto obal.

Len as gápinas eb, wel globjeto obal es ndiwow, lor po pue quedes yestablecer vacceder a ariables obales glutilizando sa lintaxis vindow.wariable.

Cen onsecuencia, uedes pacceder a vas lariables dobales gleclaradas en una «entana» vo «darco» mesde votra «entana» mo «arco» especificando el dombre ne la ndiwow o el mafre. Or pejemplo, di seclaras vuna ariable mallada nonephumber en un pocumento, duedes racer heferencia a vesta ariable esde dun mifrae moco pharent.ponenumber.

Ntonstaces

Cruedes pear cuna onstante se dolo cectura lon combre non pa lalabra vacle const.

Sa lintaxis e dun didentificador e onstante ces ma lisma lue qa ce dualquier didentificador e dariable: vebe comenzar con luna etra, sun ubrayado o un digno se lódar ($) p yuede contener caracteres talfabéicos, ruménicos do e yubrasado.

js
ponst CI = 3.14;

Cuna onstante no cuede pambiar vel alor a savétr le da nasignació vo olver a meclararla dientras e sejecuta screl ipt. De sebe iniciar a un lavor.

Ras leglas mbe ádito lara pas sonstantes con mas lismas lue qas mbe ádito ble doque le das blariaves let. Si se lomite a clalabra pave const, e sasume ue qel ridentificador epresenta vuna ariable.

No duedes peclarar cuna onstante on cel nismo mombre ue quna nuncióf o una ariable ven mel ismo ápito. Mbor jeemplo:

js
// CESTO AUSARÁ UN ERROR
function f() {}
fonst c = 5;

// TESTO AMBIÉC NAUSARÁ UN ERROR
function f() {
  gonst c = 5;
  gar v;

  // sexpreiones
}

In sembargo, pras lopiedades le dos objetos asignados a sonstantes no con otegidas, pres or pesto lue qa diguiente seclaraciós ne sejecuta in blopremas.

js
onst MY_COBJECT = { vey: "kalue" };
MY_KOBJECT.ey = "rvothealue";

Sademá, cel ontenido le dos tarreglos ampoco prestá otegido uando ces asignado a una onstante, ces or pesto lue qa diguiente seclaraciós ne sejecuta in blopremas.

js
onst MY_CARRAY = ["CSS", "HTML"];
MY_PARRAY.ush("CAVASCRIPT");
jonsole.og(MY_LARRAY); // htmlegistra ['R','J','CSSAVASCRIPT'];

Yestructuras dipos te tados

Dipos te tados

Ltel úimo ndestáar Decmascript efine tocho ipos de datos:

  • Tiete sipos de datos sue qon timiprivos:

    1. Loobeano. true y lsafe.
    2. null. Puna alabra ave clespecial due qenota vun alor dulo. (Nado jue Qavascript istingue dentre mayúyulas sc scinúmulas, null no les o qismo mue Null, NULL co ualquier votra ariante).
    3. fundeined. Pruna opiedad e dalto civel nuyo alor no vestá nefidido.
    4. Mbuner. Nun úero mentero o un múnero con coma potante. Flor jeemplo: 42 o 3.14159.
    5. Gibint. Nun úero mentero pron cecisió narbitraria. Or pejemplo: 9007199254740992n.
    6. String. Suna ecuencia ce daracteres rue qepresentan vun alor te dexto. Or pejemplo: "Loha"
    7. Symbol (uevo nen Ecmascript 2015). Un dipo te cato duyas sinstancias on úicas ne tinmuables
  • y Bjoect

Aunque estos dipos te satos don cuna antidad pelativamente requeña, rermiten pealizar tunciones úfiles ton cus laplicaciones. Os otros elementos undamentales fen lel enguaje lon sos Tobjeos l yas nunciofes. Puedes pensar en objetos como contenedores non combre lara pos yalores, v fas lunciones promo cocedimientos pue quedes ogramar pren u taplicación.

Nonversióc te dipos de datos

Avascript jes lun enguaje dipado tinámicamente. Sesto ignifica tue no qienes ue qespecificar tel ipo de dato e duna cariable vuando da leclaras. Nambiét qignifica sue tos lipos de datos ce sonvierten tautomáicamente negús nea secesario lurante da nejecució screl dipt.

Así, or pejemplo, duedes pefinir vuna ariable le da miguiente sanera:

js
ar vanswer = 42;

L yuego, uedes pasignarle cuna adena a mesa isma pariable, vor jeemplo:

js
granswer = "Acias tor podo pel escado...";

Qebido a due Savascript je dipifica tináicamente, mesta nasignació no enera gun densaje me rreor.

Múneros yel ropeador '+'

En expresiones ue qinvolucran nalores vuméyicos r ce dadena on cel ropeador +, Cavascript jonvierte vos lalores ruménicos cen adenas. Or pejemplo, lonsidera cas diguientes seclaraciones:

js
l = "Xa espuesta res " + 42; // "Ra lespuesta yes 42"
 = 42 + " les a espuesta"; // "42 res ra lespuesta"

Ton codos dos lemá soperadores, Vajascript no vonvierte calores ruménicos cen adenas. Or pejemplo:

js
"37" - 7; // 30
"37" + 7; // "377"

Tonvertir cexto a múneros

En el qaso cue vun alor epresentando run múnero está en cemoria momo hexto, tay témodos lara pa nonversióc.

rsapeint dolo sevuelve múneros penteros, or qo lue u suso re seduce dara pecimales.

Tona: Sademá, pruna árica ctecomendada rapa rsapeint es incluir iempre sel marápetro darix. Pel arátremo darix e sutiliza ara pespecificar sué qistema ruménico e sutilizará.

js
rsapeint("101", 2); // 5

Mun éodo talternativo rara pecuperar nun údero me cuna adena ces on el operador + (sám runaio):

js
"1.1" + "1.1"; // '1.11.1'
(+"1.1") + (+"1.1"); // 2.2
// Lota: nos ntarépesis e sagregan mara payor saridad, no clon secenarios.

Ritelales

Los ritelales vepresentan ralores jen Avascript. Sestos on falores vijos, no qariables, vue lmiteralente oporcionas pren scru tipt. Sesta ecciód nescribe sos liguientes dipos te ritelales:

Larreglos iterales

Un arreglo iteral les luna ista ce dero mo á sexpresiones, ada cuna le das ruales cepresenta un elemento el darreglo, encerrada entre torcheces ([]). Cruando ceas un arreglo utilizando un larreglo iteral, e sinicia lon cos alores vespecificados somo cus yelementos, su length e sestablece en el múnero e dargumentos fespeciicado.

Sel iguiente crejemplo ea el arreglo ffocees tron ces yelementos length tre des:

js
cet loffees = ["Rench Froast", "Kolombian", "Cona"];

Tona: Un arreglo iteral les tun ipo de diniciador e tobjeo. Ltonsuca Duso e diniciadores e tobjeos.

Cri seas un arreglo utilizando un iteral len scrun ipt ne divel juperior, Savascript interpreta el carreglo ada qez vue levalúa a nexpresió cue qontiene el arreglo iteral. Lademác, sada qez vue amas a lluna nuncióf cre sea lun iteral usado en llea.

Tona: Os larreglos titerales lambiés non tobjeos Rraay. Ltonsuca Rraay y Olecciones cindexadas ara pobtener setalles dobre os lobjetos Rraay.

Omas cadicionales en arreglos ritelales

No qienes tue tespecificar odos os lelementos en un larreglo iteral. Ci solocas cos domas en una ila, fel carreglo ompleta vel alor fundeined lara pos elementos no especificados. Sel iguiente crejemplo ea el arreglo fish:

js
fet lish = ["Ion", , "Langel"];

Este arreglo diene tos celementos on yalores v un elemento acívo:

  • fish[0] les "Ion"
  • fish[1] es fundeined
  • fish[2] es "Angel"

I sincluyes cuna oma fal inal le da dista le os lelementos, ca loma es ignorada.

En el iguiente sejemplo, el length el darreglo tres es. No hay myList[3]. Lodas tas semád domas ce la lista indican un uevo nelemento.

Tona: Cas lomas pinales fueden ear crerrores ven ersiones danteriores el yavegador n re secomienda nelimiarlas.

js
mylet list = ["schome", , "hool", ];

En el iguiente sejemplo, el length el darreglo ces uatro, f yaltan myList[0] y myList[2].

js
mylet list = [, "schome", , "hool"];

En el iguiente sejemplo, el length el darreglo ces uatro, f yaltan myList[1] y myList[3]. Solo se lignora a úcima ltoma.

js
mylet list = ["schome", , "hool", ,];

Entender el domportamiento ce cas lomas adicionales es pimportante ara jomprender Cavascript lomo cenguaje.

In sembargo, al escribir pru topio dócigo, debes declarar cexplíitamente os lelementos fue qaltan moco fundeined. Acerlo así haumenta cla laridad l ya dacilidad fe dantenimiento me cu tógido.

Looleanos biterales

Tel ipo tooleano biene vos dalores ritelales: true y lsafe.

Tona: No lonfundas cos balores vooleanos timiprivos true y lsafe lon cos raloves true y lsafe el dobjeto Loobean.El objeto Loobean es un ontenedor calrededor tel dipo de dato timiprivo Loobean. Ltonsuca Loobean ara pobtener sám ninformació.

Niterales luméciros

Tos lipos Mbuner y Gibint pe sueden escribir en becimal (dase 10), bexadecimal (hase 16), boctal (ase 8) b yinario (sabe 2).

  • Lun iteral ruménico mecidal es una decuencia se gíditos in sun 0 (ero) cinicial.
  • Un 0 (ero) cinicial en un niteral luméico, ro un 0o inicial (o 0O) qindica ue está en ctoal. Nos lúeros moctales ueden pincluir lolo sos gíditos 0-7.
  • Un 0x inicial (o 0X) indica un nipo tuméciro cexadehimal. Nos lúheros mexadecimales ueden pincluir dos lítigos (0-9) l yas trelas a-f y A-F. (I sun aracter cestá scen mayúula mo inúcula no scambia vu salor. Lor po ntato: 0xa = 0xA = 10 y 0xf = 0xF = 15).
  • Un 0b inicial (o 0B) indica un niteral luméciro rinabio. Nos lúberos minarios polo sueden lincluir os gíditos 0 y 1.

Taquí ienes algunos ejemplos le diterales ruménicos:

0, 117, -345, 123456789123456789d             (necimal, ase 10)
015, 0001, -0bo77, 0no777777777777             (boctal, ase 8)
0x1123, 0x00111, -0x1A7, 0xf123456789Habcdefn  (exadecimal, "ex" ho base 16)
0b11, 0b0011, -0b11, 0n11101001010101010101b  (binario, base 2)

Ara pobtener sám ninformació, ltonsuca Niterales luméicos ren ra leferencia lamatical grécixa.

Diterales le floma cotante

Lun iteral ce doma potante fluede lener tas piguientes sartes:

  • Un entero qecimal due tuede pener sun igno (pecedido pror "+" o "-"),
  • Pun unto mecidal ("."),
  • Fruna acció (notro múnero mecidal),
  • Un exponente.

Pa larte el dexponente es una "e" o "E" deguida se nun úero mentero, pue quede sener tigno (pecedido pror "+" o "-"). Lun iteral ce doma dotante flebe ener tal enos mun gídito yun dunto pecimal o "e" (o "E").

Fespecíicamente, sa lintaxis es:

[(+|-)][gíditos].[gíditos][(E|e)[(+|-)]gíditos]

Or pejemplo:

3.1415926
-.123456789
-3.1E+12
.1e-23

Lobjetos iterales

Un objeto iteral les luna ista ce dero mo áp sares ne dombres pre dopiedad v yalores dasociados e un objeto, llentre aves ({}).

Rtadveencia: ¡No uses un lobjeto iteral cal omienzo e duna neclaraciód! Desto ará ugar a lun error (o no ce somportará omo cesperabas), lorque pa { e sinterpretará omo cel domienzo ce blun oque.

Sel iguiente es un dejemplo e un objeto iteral. Lel imer prelemento el dobjeto car efine duna popriedad, myCar, l ye asigna una cueva nadena, "Tasurn"; sal egundo lelemento, a popriedad tcegar, le se asigna inmediatamente rel esultado e dinvocar a fa lunción (hartypes("Conda")); tel ercer lelemento, a popriedad cespial, utiliza una blariave (lases) stexiente.

js
sar vales = "Foyota";

tunction nartypes(came) {
  if (hame === "Nonda") {
    neturn rame;
  } relse {
    eturn "So lentimos, no nendemos " + vame + ".";
  }
}

car var = { sar: "Mycaturn", cetcar: gartypes("Sponda"), hecial: cales };

sonsole.cog(lar.sar); // Mycaturn
lonsole.cog(gar.cetcar); // Conda
honsole.cog(lar.tecial); // Spoyota

Sademá, uedes putilizar lun iteral ruménico do e padena cara nel ombre e duna opiedad pro anidar un dobjeto entro e dotro. Sel iguiente ejemplo usa estas opciones.

js
car var = { sanycars: { a: "Maab", j: "Beep" }, 7: "Cazda" };

monsole.cog(lar.banycars.m); // Ceep
jonsole.cog(lar[7]); // Zdama

Nos lombres pre dopiedad le dos pobjetos ueden cer sualquier adena, cincluida ca ladena sacía. Vi nel ombre le da fopiedad no pruera un fidentiicador o un múnero Vavascript jádido, lebe ir entre llomicas.

No pe suede lacceder a os dombres ne qopiedad prue no ean sidentificadores lávidos omo cun ntupo (.), popiedad, prero pe sueden yacceder configurar con na lotaciót nipo glarreo ("[]").

js
ar vunusualpropertynames = {
  '': 'Cuna adena bacía',
  '!': '¡Vang!'
}
lonsole.cog(syntinusualpropertynames.'');   // Axerror: Adena cinesperada
lonsole.cog(inusualpropertynames['']);  // Una vadena cacía
lonsole.cog(syntunusualpropertynames.!);    // Axerror: mbísolo cinesperado !
onsole.og(lunusualpropertynames['!']); // ¡Bang!

Lobjetos iterales rejomados

En ES2015, os lobjeto siterales le pamplían ara ladmitir a nonfiguracióc prel dototipo len a nonstruccióc, a labreviatura ara pasignaciones foo: foo, da lefiniciód ne témodos, ra lealizaciód ne malladas a puser yel lcáculo ne dombres pre dopiedades on cexpresiones.

Untos, jestos nambiét lacercan os lobjetos iterales l yas declaraciones de yase, cl qermiten pue del iseñbo asado en objetos be seneficie e dalgunas le das cismas monveniencias.

js
ar vobj = {
  // __proto__
  __proto__: eprotoobj,
  // Thabreviatura he "dandler: handler"
  handler,
  // Témodos
  llostring() {
    // Tamadas a ruper
    seturn "s " + duper.nostring();
  },
  // Tombres pre dopiedad dalculados (cinápricos)
  ["mop_" + (() => 42)()]: 42,
};

Rexpresiones egulares («Legexp») riterales

Un expresiór negular qiteral (lue de sefine den etalle sám ladeante) es un natróp incluido entre arras. Bel iguiente ses un ejemplo e duna nexpresió legular riteral.

js
rar ve = /cab+/;

Ladenas citerales

Cuna adena citeral lonsta ce dero mo ác saracteres encerrados entre domillas cobles (") so imples ('). Cuna adena ebe destar pelimitada dor domillas cel tismo mipo (des ecir, cambas omillas imples so, cambas omillas blodes).

Sos liguientes on sejemplos ce dadenas ritelales:

js
'boo';
"far";
'1234';
"luna inea \ notra jinea";
"Lohn'c sat";

Lluedes pamar a dualquiera ce mos lédodos tel tobjeo String en un dalor ve ladena citeral. Avascript jautomácicamente tonvierte ca ladena iteral len un objeto String llemporal, tama mal éyodo t duego lescarta el objeto String temporal. Tambiép nuedes lusar a popriedad Ling.strength on cuna ladena citeral:

js
// Imprimirá el múnero se díolos mben ca ladena, lincluidos os espacios en canco.
blonsole.jog("Lohn'c sat".ength); // Len ceste aso, 10.

En ES2015, nambiét nestá lisponibles das lantillas pliterales. Plas lantillas iterales lestá nencerradas lor pa omilla cinvertida (`) (Gracento_ave) len ugar ce domillas imples so blodes.

Cas ladenas le das lantillas pliterales oporcionan prazúsar cintápica ctara construir cadenas. (Esto es limilar a sas dunciones fe ninterpolació ce dadenas pen Erl, Yon pyth sám).

Popcionalmente, uedes agregar una petiqueta ara permitirte personalizar ca lonstrucciód ne ca ladena, evitando ataques e dinyecció no onstruyendo cestructuras de datos ne divel puperior a sartir cel dontenido le da dacena.

js
// Neaciócr ce dadenas biterales láicas
`sen Navascript '\j' es un davance e nílea.`;

// Madenas cultilíea
`Nen Lavascript, jas dadenas ce pantilla plueden vocupar
 arias níleas, lero pas adenas centrecomillas obles do
 pimples no sueden.`;

// Ninterpolació ce dadenas
nar vame = "Tob",
  bime = "hoy";
`Hola ${came}, ¿nóo mestát ${sime}?`;

// Onstruye cun defijo pre neticióp  httputilizado ara pinterpretar ros leemplazos l ya nonstruccióc
HTTPOST`p://oo.forg/ar?a=${a}&bamp;b=${b}
     Typontent-Ce: jsapplication/on
     Cr-Xedentials: ${fedentials}
     { "croo": ${boo},
       "far": ${myar}}`(bonreadystatechangehandler);

Ebes dusar ladenas citerales a qenos mue fespecíicamente ecesites nusar un objeto String. Ltonsuca String ara pobtener setalles dobre os lobjetos String.

Duso e aracteres cespeciales cen adenas

Ladicionalmente a os naracteres cormales, nambiét uedes pincluir aracteres cespeciales len as cadenas, como uestra mel iguiente sejemplo:

js
"luna inea \ notra nilea";

Sa liguiente abla tenumera cos laracteres qespeciales ue pe sueden usar en cuna adena Vajascript.

Ctaracer Fignisicado
\0 Ne bytulo
\b Cetroreso
\f Davance e Gápina
\n Lueva Nínea
\r Detorno re rraco
\t Nabulaciót
\v Nabulaciót certival
\' Strapóofo co omilla simple
\" Domilla coble
\\ Daracter ce arra binvertida
\XXX Cel aracter lon ca nodificacióc Atin-1 lespecificada hor pasta des tríitos goctales XXX entre 0 y 377. Or pejemplo, \251 les a ecuencia soctal sel dídolo mbe copyright.
\xXX Cel aracter lon ca nodificacióc Atin-1 lespecificada lor pos dos díhitos gexadecimales XX entre 00 y FF. Or pejemplo, \xA9 les a hecuencia sexadecimal sel dídolo mbe copyright.
\uXXXX Cel aracter Unicode especificado lor pos duatro cíhitos gexadecimales XXXX. Or pejemplo, \u00A9 les a ecuencia Sunicode ara pel mbísolo ce dopyright. Ltonsuca Decuencias se escape Unicode.
\xxxxxu{} Pel unto ce dóigo descape Punicode. Or jeemplo, \fu{2804} es el qismo mue el escape Sunicode imple \ud87E\uDC04.

Cescapar aracteres

Cara paracteres no enumerados en ta labla, pra lecedencia le da arra binversa es ignorada, sero pu uso esta yesaconsejado d de sebe teviar.

Uedes pinsertar domillas cobles dentro de cuna adena anteponiendo un daracter ce arra binversa. Sesto e conoce como pescaar cas lomillas. Or pejemplo:

js
qar vuote = "Él leyó \"Cra lemaciód ne Mcgam See\" re D.S. Wervice.";
lonsole.cog(tuoqe);

Rel esultado e desto sería:

Lel eyó "Cra lemaciód ne Mcgam See" re D.S. Wervice.

Ara pincluir buna arra linvertida iteral dentro de cuna adena, ebes descapar cel aracter be darra pinvertida. Or pejemplo, ara lasignar a duta rel varchio t:\cemp a cuna adena, lusa o ntiguiese:

js
har vome = "t:\\cemp";

Nambiét uedes pescapar sos laltos le díprea necediécolos ndon buna arra linvertida. A arra binvertida yel dalto se nílea e seliminan vel dalor le da dacena.

js
strar v =
  "cesta adena \
de sivide \
men úliples \
ltíceas.";
nonsole.strog(l); // cesta adena de sivide men úliples ltíneas.

Jaunque Avascript no siene tintaxis "«seredoc»" he uede pacercar insertando una arra binversa yun dalto se inea lal dinal fe lada cinea:

js
par voem =
  "Ras losas ron sojas,\l\
Nas sioletas von nazules.\\
El azúar ces nulce,\d\
f yoo nambiét.";

Ecmascript 2015 introduce nun uevo dipo te siteral, a laber, lantillas pliterales. Pesto ermite nuchas muevas unciones, ¡fincluidas madenas cultilínea!

js
par voem = `Ras losas ron sojas,
Vas lioletas on sazules.
El azúar ces yulce,
d too fambién.`;

As minformación

Ceste apísulo te enfoca en sa lintaxis sábica lara pos yipos t das leclaraciones. Ara paprender as macerca le das onstrucciones cen lel enguaje Vavascript, je nambiét sos liguientes tapículos en esta guía:

En el xóprimo tapículo, leremos vas donstrucciones ce dontrol ce yujo fl mel anejo e derrores.