Notas HTML Css JS
Notas HTML Css JS
VSCODE---------------------------------------------
https://code.visualstudio.com/ // para descargar la version de escritorio
https://vscode.dev/ // es el vscode en linea.
<!----------------- NOTAS DE ATAJOS VSCODE --------- -->
ctrl+mayus+7 para comentar una linea
ctrl+izq o der para moverte x palabras
alt+arriba o abajo para mover una linea
alt+i para copiar una linea completa
ctrl+d para seleccionar y marcar las sgtes lineas seleccionadas
ctrl+espacio para que te muestre el intelisense (ventana de opciones al
teclear)
ctrl+shift+K para borrar linea donde estas parado
ctrl+B para cerrar o abrir el menu lateral
ctrl+shift+p para entrar en la busqueda de todo lo quieras hacer,
es com la configuracion
F2 si quieres cambie el nombre a una varaible
para abrir una carpeta y posicionarse en ella en vscode desde terminal hacer en
terminal code .
-----------------------------------------------------------------------------------
----
Your identification has been saved in /home/laboratorio/.ssh/id_rsa
Your public key has been saved in /home/laboratorio/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:igk6MA68l1Qy9UdA0u3/f9JzHU8u415YhxkOu1MpKhg laboratorio@laboratorio
ssh-rsa
AAAAB3NzaC1yc2EAAAADAQABAAABgQDGGySa1/ewO0ypAnuIIudVOKG8ozltK8YCTCjw9THeAGZhn5IipBL
tfFfrl+h/qrlSR82bcuJ/O9n9izPWKSZbXsLSGEgpaBxYn9gBBidrdC9MCRtpwVZu/
i6WfGEztahrWHRooyy9q9Udw63MgF21wyT83OnKJn7cXFvXoz32NPXjE+dbgXhwDA5Gy6yBUp24HcN1TJJq
loFaHLtJVgEmNvzwLIg0JhRIMWC2GQ0QFp4G/hx/seaDwQMA8wi+il4KYIH0MiZ+shEEDB/
uAwdm+WTlbIYTtC5mRSQ8LzCFo7t0V9rtNfUgUeJT/
d0lu317E4B4KZ3YHFvB6zJoxkPBqQIlpc0Z6j2sKopTjFyT9MGlEY9y9w/
DBG3PnQHNjGOzpvUVJTvtse8B3NctDOb/0jDn5hoDxsU1o1h28Q8WswzrqFM51cl9sHR/TBhhP/
I6nYFQ9z/nvsUSGwAiqc/xgiGSGQW9i0MeeH6rHKe68rftCVtnsD7jNrkqLwlHv9U=
enzoenlaweb@formacion-poo
-----------------------------------------------------------------------------------
------
------------------------------------FIN
VSCODE---------------------------------------------
<!-- Comentarios HTML -->
/* Comentarios CSS y js */
# Comentarios en Python.
los comentarios en JSON no existen, para ello la gente se ingenio colocarlo como un
items de llave:valor. miralo en las notas mias de JSON.
--------------------------------------------Git y
GitHUB----------------------------------
https://github.com/Enzodvc/mirepo // Repo de Enzo
Git: https://git-scm.com/downloads
sudo /bin/bash -c "$(curl -fsSL
https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
https://phoenixnap.com/kb/how-to-install-git-on-ubuntu // GIT
en terminal:
//pasos para instalar GIT
sudo apt-get update
sudo apt get install git
git --version // te muestra si tienes instalado git y su version
git config --global user.name "nombre usuario" // la configuracion a realizar sera
global y no por projecto.
git config --global user.email [email protected] // el correo del usuario
en este caso:
git config --global user.name "enzodvc" // para añadir el nombre de usuario de
forma local, no en web.
git config --global user.email "[email protected]"
git config --list
git init // para iniciar o crear un repositorio dentro de la carpeta donde estes
con el terminal.
este proceso crea una carpeta oculta .git. contiene archivos que no se tocan.
se puede borrar esta carpeta cuando decidas eliminar este repositorio.
git config --global core.editor "code --wait" // para decirle a git que el editor
es vs.code el --wait es para que espere a que yo termine de trabajar con el editor
de texto, queda como inhabilitado
git config --global -e // arranca el editor vscode
git config --global core.autocrlf input(linux) / true(windows)
git config -h // un listado de ayuda
para ver las ramas: git branch, tambien te marca en cual estas posicionado
para cambiar de rama: git checkout nombredelarama
para renombrar una rama: hay 2 metodos
metodo que debes estar dentro de la rama que quieres cambiar el nombre:
git branch -m nuevonombrerama
metodo para hacerlo en cualquier posicion que quieres cambiar el nombre:
git branch -m nombreviejo nuevonombrerama
como eliminar una rama: git branch -d nombredelarama
GITHUB.
el boton "go to file" es un buscador de archivos en alguna carpeta dentro de github
para crear un repositorio: buscar el "+" en la parte superior derecha, click en new
repositoty
para borrar repositorio: ubucar el repositorio que vas a borrar, ir dentro, buscar
boton de engranaje, ir a la parte inferior de esa pagina abierta y ubicar zona de
peligro, ahi debes buscar eliminar repositorio, te pide clave de usuario.
Para bajar el repositorio que tienes o que deseas trabajar en local y se encuentra
en github se usa clone.
hay 3 forma: https, ssh y github CLI (command line interface)
clonar con https:
vamos a code(boton verde)> la pestaña de https, le damos a copiar un url.
luego vamos a terminal dentro de una carpeta especificada para ello.
hacemos: git clone https://github.com/Enzodvc/mi-primer-repositorio.git <<--
ejemplo.
ahora veamos como actualizar los cambios en mi repo local, desde github. con git
pull(halar)
cuando haya cambios en gitpull y desees actualizar tu repo local asi:
git pull origin(github) main(ramalocal)
diferencias entre git pull y git fetch
git pull, ejecuta y hala o trae el repo github al repo git o local.
git fetch origin(solo la info de github), solo te informa si hay cambios o
diferncias entre repo github y repo local. y si tu decides q debes actualizar, se
hace con git pull.
nota de enzo: la verdad es que no se ve nada.
sin embargo hay otro comando git checkout origin/main, te muestra los cambios en
vscode que hay entre github y git. y para salir de esas vistas se hace con git
checkout main, es decir vuelve a como estaba originalmente
y para realizar los cambios con git commit
Crear repositorio local(git) y luego enviarlo a GitHub(web).
el tema es lo sgte: primero debes crear un repo local.
luego debes crear un repo en github (se puede llamar diferente sin problema)
luego debes ver cual es el https (ubicado en el nombre del repositorio)
y luego los sincronizas con git remote add origin (elhttpsanterior) en mi caso
(https://github.com/Enzodvc/cosas-de-JS.git)
ahi te pide un usuario y luego una clave que vuelve a ser el token creado
anteriormente. es decir es valido el mismo token.
bifurcar un repositorio (fork)
es copiar un repo de github publico y luego llevarlo a nuestra cuenta github y
luego lo pasamos a nuestro local.
para ello, buscas el repo publico que desees, ejm freecodecamp luego le das a fork
y te pregunta si deseas hacer un fork.
listo, a partir de ese momento tienes en tu usuario github una copia del proyecto
ajeno.
como bajar ese repo publico, ya ubicado en nuestro usuario como copia local.
con git clone y el https de ese repo.
ejm git clone https://github.com/Enzodvc/proyecto-html.git
al bicurfar un repo, puedes contribuir al repo original haciendo pull request es lo
inverso a fork.
fork y pull request, pertenecen a la opcion de repo publicos. fork para copiarlo y
pull request para solicitar hacer alguna contribucion de codigo.
para hacer eso, primero debes subir con git push la info modificada en tu repo
local a tu repo web.
recuerda git push origin main. con usuario de la cuenta de github tuya y la clave
generada con https.
luego debes hacer un pull request para ver si el tio dueño decide aceptar los
cambios. esto se hace en el boton contribute.> open pull request.
hacer un pull request a partir de una rama. (o como enviar una rama a github)
se necesita bajarlo a repo local, luego creas una rama con git checkout -b
nombrerama // (-b) te permite crearla y moverte adentro, de una vez.
haces los cambios pertinentes, haces git add . para preautorizar los cambios y
luego el commit
y ahora: para enviar la rama a github haces: git push origin nombredelaramalocal
ahi te pide usuario clave qwue es el https.
luego en la web veras que llegaron los cambios, podras mirar en la main y en la
rama.
ahora si haces un pull request debes mirar que sea desde la rama a la main del repo
web.
----------------------------------
HTML----------------------------------------------------
<!----------------- Plantilla mas basica HTML ---------- -->
<!DOCTYPE html> // plantilla similar se crea automaticamente en vscode solo con
seleccionar el snippets con nombre HTML, claro, el file, debe llevar una
extension.html
<html>
<head>
<meta charset="utf-8">
<!-- meta: para que los caracteres sean tipo hispano -->
<title> pagina de Hola mundo </title>
<!-- title: para identificar x dentro al programa -->
<link href="plantillacss1.css" rel="stylesheet" />
<!-- link: link de referencia al enlace con el programa xxx.css-->
<script src="script.js" type="text/javascript"> </script>
<!-- Scrip: link de referencia al enlace con el programa xxx.js -->
</head>
<body>
-----
</body>
</html>
------------------------- FIN Plantilla mas basica HTML -->
<title> pagina de Hola mundo </title> <!-- para identificar x dentro al programa
-->
<link href="plantillacss1.css" rel="stylesheet" /> <!-- link de referencia al
enlace con el programa xxx.css-->
<script src="script.js" type="text/javascript"> </script> <!-- link de referencia
al enlace con el programa xxx.js -->
</head>
<body>
<header>
<nav> </nav> // etiqueta de navegacion se usa para indicar a html que
dentro de su contenido tendras una barra de navegacion
<ul> listas indefinidas y que seran de navegacion con la etiqueta <nav> //
mas explicacion en curso_fundamentos_HTML.iso guardado en cursos realizados. video:
ES_865_05_06_00_XR25R.mp4.
</header>
<aside>
<nav> </nav>
</aside>
<section>
<article id="iralprincipio"> // con el ID="xxxxx" le esta dando nombre a esa
etiqueta, en este caso "este arcticle se llama "iralprincipio""
<strong> Hola Mundo!!! desde esta pagina en html </strong>
<h1>titulo tipo H1 </h1>
<h2>titulo tipo H2 </h2>
<a href="#iralprincipio">Ir al principio</a> // con la etiqueta <a y el
atributo href="#xxx"> lo convierte en un link de envio a algun sitio interno y en
este caso lo esta enviando a article llamado ir al principio y la almohadilla o
gato (#) le dice que es un enlace a la misma pagina, poruqe sin el gato, piensa q
es un archivo.
</article>
<article>
----
</article>
</section>
<footer></footer>
</body>
</html>
------------------------- FIN Plantilla completa HTML -->
<strong> Hola Mundo!!! desde esta pagina en html </strong> // sirve para poner
en negrita un texto
<h1> hay desde h1 hasta h6 y son para titulos</h1>
<br /> para hacer una linea hacia abajo
<hr > <!-- dibuja una linea horizontal sencilla-->
<hr width="200px" align="right"> <!-- dijuja una linea horizontal con parametros--
>
<!-- lorem para escribir contenido de relleno lorem20 (20 palabras) lorem*20
(20lineas)-->
<p> etiquieta para escribir parrafos</p>
<dl> <!-- lista de definiciones, usadas para dar detalles sobre los puntos adentro
de la lista -->
<dt> punto para definir</dt> <!-- concepto a definir -->
<dd>detalle sobre el contenido de DT anterior </dd> <!-- detalle del concepto
anterior -->
</dl>
---------------------------- FIN listas en HTML----------------------------
------------------------------------------TABLAS y MATRIZ----------------------
<h3>TABLAS y MATRIZ</h3>
<table> <!-- indicando que es una tabla o matriz -->
<thead> <!-- indicando que es un encabezado de la table o matriz -->
<th>titulo 1</th> <!-- indicando que es un encabezado pero de la columna de
la table o matriz -->
<th>titulo 2</th>
<th>titulo 3</th>
</thead>
<tr> <!-- indicando que es una fila de table row -->
<td> elemento 1</td> <!-- indicando que es una columna de table definition o
ocmo se llame -->
<td> elemento 2</td>
<td> elemento 3</td>
</tr>
<tr>
<td> item 1</td>
<!-- <td> item 2</td> -->
<td> item 3</td>
</tr>
<tr>
<td> opcion 1</td>
<td> opcion 2</td>
<td> opcion 3</td>
</tr>
</table>
en CSSS
table {
border: 1px solid #000000;
}
<details>
<summary> este es el punto a detallar en el acordeon</summary>
<p> este es el detalle del punto padre del acordeon</p>
</details>
// creo que si colocas el atributo value en input, no necesitas label. seria asi.
<input id="hombre" type="radio" name="sexo" value="hombre">HOMBRE <br>
<input id="mujer" type="radio" name="sexo" value="mujer">MUJER <br>
----------------------DATALIST----------------------------------
<!-- Data list es una ventana con las diferentes opciones que pueda haber, para que
selecciones solo una.
tiene la particularidad que puede autocompletar escribiendo una o mas letras de las
palabras que lo componen -->
<fieldset>
<h3>DATALIST</h3>
<label for="coches">MARCAS DE COCHES POPULARES</label>
<select id="coches" name="coches">
<option value="Fiat">FIAT</option>
<option value="Citroen" selected>CITROEN</option>
<option value="Volvo">vOlvO</option>
<option value="Ducati">DuCaTi</option>
</select>
</fieldset>
<address>
<p> calle, nro, piso, portal, cod postal, Barcelona, España</p>
</address>
Los selectores de clases aquellos que tienen class= en cualquier etiqueta de HTML.
Van antecedido x un punto (.)
.prueba {propiedad1: valor1;} // en este ejm: en html hay una o varias etiquetas
con la clase prueba
los selectores de id. hacen lo mismo que los de clases pero van solo por el id que
es unico se identifica con (#)
ejm: # prueba2 {propiedad1: valor1;}
para indicar un hijo especifico dentro un padre con varios hijos se usa asi:
este es el codigo en html // <li>Pimientos <a href="#" >Naranjas</a></li>
li>a{color: orange);} // aqui especificamos que busque una etiqueta li, que tenga
una etiqueta a, dentro.
id= Identifican elementos de manera unica, no puede hacer 2 elementos con el mismo
id.
class= Las clases identifican a elementos con caracteristicas comunes, podemos
tener varias clases
en un elemento puede hacer un id y varias clases.
marging: es una propiedad de CSS que establece borde con respecto a la caja padre
tiene los mismos atibutos de padding. Puede ser en negativo -25px por ejm.
para la propiedad color. serian RGBA (RR,GG,BB,AA) / donde el los 3 parametros son
rojo(R),
Green(G), Blue(B) y el 4t0 parametro que es la opacidad va desde 0 hasta 1 con
intervalos de 0.xxx
background-image: url("ruta");
Display inline y display block: Puedes dar estilo en linea o en bloque a los
elementos con
display: inline o display: block.
hay q apuntar todos los estilos que tengo en la hoja styleenzo y explicar cada
elemento
en CSS para dar formato a una etiqueta <a> xxxx</a> lo puedes hacer asi:
a {
color: #31d0ec;
text-decoration: none;
}
a: hover {
color: #cccccc;
font-size: X-large; // agranda el tamaño de la letra
}
<!--hover es el comportamiento cuando pones el cursor encima del enlace ejm(cambio
de color)-->
-------------------------------JavaScript
JS----------------------------------------------
asi se llama desde HTML un programa de JS. obviamente el archivo debe llamarse
xxxx.html
<script>
console.log ("Hola Mundo desde JS")
</script> // para abrir la consola del web browser con F12
tabiem puesdes colocar esto en el archivo xxx.js seria asi:
var a;
var b=2;
Nota: con var, se puede declarar varias veces. con let, solo se puede declarar una
vez.
ojo: si se puede cambiar su valor.
ejm: var a=5;
var a=6; // si se puede.
let b=7;
let b=8; // no te deja pero si puedes hacer esto:
b=8; // si te deja cambiar su valor
const bario=7
bario=8 // ya no se puede modificar el valor de bario en ningun momento por ser
declarado
como constante.
y para usar constantes, se debe declarar en mayusculas, como norma: asi:
BARRIO=7
sin embargo el uso de const en arreglos y funciones, puede ser mutar su valor.
ejm:
const s = [5, 6, 7];
s = [1, 2, 3]; // no deja cambiarlo
s[2] = 45; // si deja mutarlo
console.log(s); // [5, 6, 45] seria el resultado
con Object.freeze(nombre del array) // si puedes congelar todo el arreglo. sin
mutacion.
----------------------------------------concat------------------------
const array1 = ['a', 'b', 'c'];
const array2 = ['d', 'e', 'f'];
const array3 = array1.concat(array2);
console.log(array3);
// expected output: Array ["a", "b", "c", "d", "e", "f"]
---------------------------------------FIN concat------------------------
console.log (a=4)
console.log (b)
Plantillas de cadena: Se usan para mezclar variable con texto a la hora de mostar
en pantalla
para escribir estas plantillas de texto se usan
comillas invertidas (`al principio de la cadena y a la final) y donde vaya la
variable debe ir asi: ${variable}
ejm:
var nombre: "Jhon"
var apellido: "Doe"
console.log(`Mi nombre es: ${nombre} y mi apellido es: ${apellido}`)
tambien es valido para mostrar objetos asi:
var sumArreglo =[4,6,8,2,1,2,3,4,5];
console.log(`HOla mi arreglo es: ${sumArreglo} y eso es todo` );
para mostrarlo con JSON. seria asi:
console.log(`Chao mi arreglo con JSON es: ${JSON.stringify(sumArreglo)} y eso es
todo` );
tambien se puede trabajar con arrglos con las plantillas de cadenas ejm:
var miObjeto ={
"nombre" : "Gino",
"apellido": "Leoni",
"edad" : "35"
}
var bari = `Se muesra los valores de un objeto: nombre es: ${miObjeto.nombre} y mi
edad es: ${miObjeto.edad} toy joven`
console.log (bari)
---------------------------ARREGLO RECURSIVO
-----------------------------------------------
var arr=[]
function conteoRegresivo(a){
if (a <= 0) {
console.log (a + " conteoRegresivo es cero")
return;
}
console.log (a)
arr.unshift(a)
conteoRegresivo(a-1)
}
conteoRegresivo(10);
var soloprincipal=[];
--------------------------------FUNCIONES.--
v----------------------------------------------
definicion base:
function mostrarMensaje(){
console.log("Hola MUNDO desde una Funcion")
}
y para ejecutarlo se llama asi:
mostrarMensaje()
cuando se declaran variables, se pueden hacer fuera de una funcion (globales) y
locales (dentro de una funcion)
las variables locales solo tendran su valor dentro de la funcion, nada mas
las variable globales en ambos sitios , pero si declaras una misma variable fuera
y dentro de la funcion,
en la funcion, tendra el valor declarado en la funcion y a lo que salga, vuelve a
tomar el valor declarado en el programa
ya que es de tipo global.
en el programa:
xxx=0
def llamadaaalgo():
global xxx # sin el global daria error.
xxx=xxx+1
llamadaaalgo()
print(xxx)
var num1=23;
var num2=15;
function suma(para1,para2=2388)
{
console.log(para1+para2+ " resultado dentro de function")
return para1+para2
}
console.log(suma(num1,num2))
OJO: Funcion para dar formato mas bonito x consola a un vector, asi:
console.log(JSON.stringify(nombredelarreglo)); // ver que es esto
JSON.parse // ver que es esto.
------------------------FUNCIONES FLECHA--------------------------------------
las funciones flecha se usan para reducir el codigo de las funciones.
const sumarTres = function(x){
return x+3;
};
// para usar la funcion fecha seria asi:
const sumarTres = (x) => (x+3); // esta linea sustituye a las anteriores
console.log(sumarTres(4));
const sumarTres = x => (x+3); // X es el parametro y se puede omitir
los parentesis "()" porque es un solo parametro que se pasa.
con 2 parametros:
const multiplier = (item, multi) => item * multi;
console.log(multiplier(4, 2))
---------------------------FIN FUNCIONES
FLECHA--------------------------------------
-------------------------------- OPERADOR
REST--------------------------------------
/* operador Rest (...) Es un operador que se usa para hacer que los parametros
sean abiertos a la cantidad que envies desde la llamada
ejm: si en miFuncion(envias 2 parametros xxxx,yyyyy)
entonces ...args(variable que recibes esos 2 parametros, se regula a 2.) */
----------------------------FIN OPERADOR
SPREAD--------------------------------------
---------------------------FIN
FUNCIONES.------------------------------------------------
-------------------------------------
DESESTRUCTURACION----------------------------------------------
asignación de desestructuración para extraer valores de los objetos
const user = { name: 'John Doe', age: 34 };
const name = user.name; // forma normal
const age = user.age; // forma normal
const { name:username, age:userage } = user; // forma desestructurada. // hace los
mismo que las 2 lineas anteriores
esto se lee de la sgte forma:
el valor de user.name se lo asignas a la nueva variable llamada username
var [a,b]=[8,6];
console.log (a)
// asignacion de variables como arreglos, pero sin ser arreglos. Nota que a, no es
un arreglo, es una variable numerica.
var [a,b]=[b,a] // es necesario volver a definir con var
-------------------------------------FIN
DESESTRUCTURACION-------------------------------------------
-----------------------
OPERADORES--------------------------------------------------------
-------------------------CONDICIONALES
IF-----------------------------------------------
var a=31
var b=31
if (a>b){
console.log("A es MAYOR que B")
} else if(a<b){
console.log("A es MENOR que B")
} else{
console.log("A es IGUAL que B")
}
Nota importante para las estructuras con else if: si una condicion se
cumple en IF y en un else if, ejecuta la que primera condicion que aplique
if a < 5 hace algo
else if a<10 hace algo
else hace otra cosa // en este ejemplo, si a=3 puedes darte cuenta que a es
menor que 5 y que 10 y NO ejecuta las 2, solo ejecuta la priumera
-----------------------FIN CONDICIONALES
IF-----------------------------------------------
-------------------- OPERADORES TERNARIOS y TERNARIOS
MULTIPLES-----------------------------
basicamente es un if pero en una sola linea.
ejm:
var a= 3;
var b=5;
console.log (a>b ? a+2 : b*3 ) // esto quiere decir que si a es > b ejecuta a+2 y
en caso contrario ejecuta b*3
otro caso multiple
function casomultiple(a,b){
return a==b ? "a y b son iguales"
: a>b ? "a es mayor que b"
: "a es menor que b"
}
console.log (casomultiple(3,5))
-------------------------------
SWITCH-----------------------------------------------
SWITCH(valor) {
case 1:
respuesta="alpha"
break;
case 2:
respuesta="betha"
break;
case 3: // si se pegan asi, uno detras de otro, indica que para los casos 3 4 y
5 el resultado es lo mismo
case 4: // ó sea tiene el mismo tratamiento que el case: 5 que si lleva
instruccion
case 5:
respuesta="multiplex"
break;
// ---- y asi sucesivamente
case 77:
respuesta="XXXXXX"
break;
defaul: // esto es opcional y significa que si no hay ninguno de los valores
anteriores, recoge todo las opciones que quedan
respuesta="lo que queda "
break;
// lo imporatante aqui es que los case no llevan (=) ni llevan ({}) y terminan
con :
ademas cada case debe terminar con break;
tambien es lo mismo con caracteres en vez de numero
}
-----------------------FIN SWITCH-----------------------------------------------
RETORNO ANTICIPADO: Ocurre cuando necesitas salir de una funcion antes de que
termine,
se le coloca return undefined. puede ser dentro de un if anidado a una function
OBJETOS COMPLEJOS
una veriable con esta connotacion es una variable de objetos:
var nombrevar = [
{"propiedad1":"valor1,
"propiedad2":"valor2
},
{"propiedad1":"valor3,
"propiedad2":"valor4
}
]
---------------------EJEMPLO OBJETO COMPLEJO-----------------------------
console.log("OBJETOS COMPLEJOS");
var ordenesDePizza = [
{
"tipo":"margarita",
"tamaño":"individual",
"precio":5.67,
"toppings":["extra queso","champiñones","piña"],
"parallevar":true
},
{
"tipo":"4 quesos",
"tamaño":"familiar",
"precio":18.34,
"toppings":["extra queso","pimenton","piña"],
"parallevar":false
},
]
console.log(ordenesDePizza[0])
// aqui muestra todo el primer arreglo (corresponde a pizza margarita)
// seria: margarita, individual, 5,67, toppings[bla, bla bla], true
console.log(ordenesDePizza[1].tipo)
// aqui muestra solo "precio" del segundo arreglo (corresponde a "18.34")
//o tambien en formato corchete:
console.log(ordenesDePizza[1]["tipo"])
// para acceder al arreglo toppings dentro del arreglo seria asi:
console.log(ordenesDePizza[0]["toppings"][1]) // aqui coloca
// champiñones poruqe es el arreglo de toppings de pizza margarita
------------------ FIN EJEMPLO OBJETO COMPLEJO---------------------------
nota: para asignar un valor vacio a un objeto asi: "toppings": []
-----------------------OBJETOS ANIDADOS------------------------------------------
var miReceta={
"descripcion":"mi postre favorito",
"costo": "15,6",
"ingredientes": {
"masa":{
"harina":"100 grs",
"sal": "1 cucharadita",
"agua": "1 taza"
},
"cobertura": {
"azucar": "120 grs",
"chocolate": "4 cucharadas",
"mantequilla": "200 grs"
},
}
};
console.log(miReceta["ingredientes"]["cobertura"]["chocolate"])
//console.table(miReceta)
--------------------FIN OBJETOS ANIDADOS----------------------------------------
---------------------- ARREGLOS ANIDADOS----------------------------------------
var misPlantas=
[
{
tipo: "flores",
lista:
["rosas",
"tulipanes",
"dientes de león"
]
},
{
tipo: "arboles",
lista:
["abeto",
"pino",
"abedul"
]
}
];
console.log(misPlantas[0].tipo)
console.log(misPlantas[1].lista[2]) // este muestra Abedul
--------------------FIN ARREGLOS ANIDADOS----------------------------------------
-----------------------FIN OBJETO-----------------------------------------------
while (i<10){
miArreglo[i]=i,
// miArreglo.push(i)
++i;
}
console.log (miArreglo)
console.log (miArreglo.length)
while (miArreglo.length>4){
miArreglo.pop(),
console.log (miArreglo)
}
--------------------------FIN CICLO
WHILE------------------------------------------
----------------------------CICLO DO
WHILE------------------------------------------
el do while, ejecuta si o si la primera vez y para el segundo ciclo es que pregunta
var i=10;
do {
console.log(i)
i++
} while (i<5);
-----------------------FIN DO CICLO
WHILE------------------------------------------
-------------------------------- CICLO
FOR------------------------------------------
estructura:
for (desde;condicion que se cumpla; incremento){ codigo aqui}
ejm:
var miArreglo =[];
for(var i=0;i<10;i++){ // tambien se puede incrementar (i+=2 de 2 en 2)o
decrementar (i-=4)
miArreglo.push(i)
console.log(miArreglo);
}
console.log(miArreglo+"arreglo con FOR");
-----------------------FIN CICLO FOR------------------------------------------
----------------------------CICLO DO
WHILE------------------------------------------
en el ciclo DO While, la condicion se ejecuta al menos una vez.
i=16
do { haces algo
i++
} while (i<5) // en este caso, entra, ejecuta, pregunta y como no se cumple
la condicion, se sale x completo.
-----------------------FIN CICLO DO
WHILE------------------------------------------
----------------------------FIN JavaScript
JS----------------------------------------------
---------------------------FIN NODEJS-----------------------------------------