Alessandra Salvaggio - JavaScript - Guía completa

Здесь есть возможность читать онлайн «Alessandra Salvaggio - JavaScript - Guía completa» — ознакомительный отрывок электронной книги совершенно бесплатно, а после прочтения отрывка купить полную версию. В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: unrecognised, на испанском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

JavaScript: Guía completa: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «JavaScript: Guía completa»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

Si quieres crear codigo compatible con la mayor parte de los navegadores existentes, JavaScript es el lenguaje de programacion web que necesitas.
Este libro se centra en la aplicacion de JavaScript en el ambito web y se basa en ECMAScript 6, la version de JavaScript mas utilizada en la actualidad. Gracias a las prestaciones mejoradas de los PC, la ejecucion de JavaScript es cada vez mas rapida, cosa que ha permitido ampliar su entorno de uso.
Entre los temas tratados:
Trabajar con cadenas de texto, bucles, funciones, formularios y eventos
Expresiones regulares, objetos, arrays asociativos, modo estricto
Funciones avanzadas, JSON, AJAX y REST
Objetos avanzados, DOM y BOM
Lienzo, geolocalización
Web worker, arrastre, Visual Studio Code
Ademas, en la parte inferior de la primera pagina del libro encontraras el codigo de acceso que te permitira descargar de forma gratuita los contenidos adicionales del ebook en www.marcombo.info.

JavaScript: Guía completa — читать онлайн ознакомительный отрывок

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «JavaScript: Guía completa», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Veamos cómo ocurre todo esto, puesto que la función contiene muchas novedades.

En primer lugar, además de la constante que representa la fecha, se crea otra que representa la duración de un día en milisegundos, porque la diferencia entre las fechas será devuelta exactamente en milisegundos y nosotros podremos utilizar el valor de esta constante para aplicar el resultado obtenido a varios días.

const milsegEnUnDia = 1000 * 60 * 60 * 24

Una vez hecho esto, indicamos la fecha de hoy a media noche. Si no lo hacemos, la fecha contiene también la hora del momento en que se ha creado y será más difícil de comparar con la fecha que crearemos con los parámetros pasados a la función que, en cambio, no contendrá un horario y, por tanto, hará referencia a la media noche:

hoy.setHours(0, 0, 0, 0);

setHours, efectivamente, ajusta la hora de una fecha. Requiere como argumentos hora, minutos, segundos y milisegundos.

En este momento, creamos la fecha con los parámetros que han sido pasados, sin olvidarnos de restar 1 al valor pasado para el mes, dado que JavaScript utiliza para los meses números que van del 0 (enero) al 11 (diciembre).

const fechaEvento = new Date(año, mes - 1, dia);

Para que nuestra función se comporte correctamente con o sin la horal legal, debemos ajustar el horario de la fecha de hoy de manera que tenga en cuenta el posible cambio de hora causado por la hora legal:

const diferenciaHoras = Math.abs(fechaEvento.getTimezoneOffset() / 60) - Math.abs(hoy.getTimezoneOffset() / 60);hoy.setHours(hoy.getHours() - diferenciaHoras);

Como ya sabéis (puesto que lo hemos visto en el capítulo ¡Hola mundo! ), getTimezoneOffset devuelve la diferencia en minutos entre el UTC y la hora local. Si dividimos este resultado entre 60, obtendremos las horas.

En este momento, recurrimos al objeto Math , que todavía no había salido, y que nos permite ejecutar operaciones matemáticas. En concreto con abs()obtenemos la parte absoluta (positiva) de un número (en España, getTimezoneOffsetdevuelve siempre un número negativo).

Si restamos el resultado de la diferencia en horas entre los dos eventos, obtenemos el espacio que necesitamos para alinear la fecha actual con la fecha de nuestro evento: lo hacemos con setHours().

NOTA Existen diversas funciones que nos permiten elaborar un número con el objeto Math:• abs(): devuelve el valor absoluto de un número.• acos() : devuelve el arcocoseno en radianes.• asin() : devuelve el arcoseno en radianes.• atan() : devuelve el arcotangente como valor numérico comprendido entre ¬Π/2 y Π/2 radianes.• atan2() : devuelve el arcotangente del cociente de sus argumentos.• ceil() : devuelve el valor de su argumento redondeando por exceso al entero más cercano.• cos() : devuelve el coseno expresado en radianes.• exp() : devuelve el valor de eelevado al valor pasado como argumento.• floor() : devuelve el valor de su argumento redondeado por defecto al entero más cercano.• log() : devuelve el logaritmo natural en base edel número pasado como argumento.• max() : devuelve el valor máximo entre los argumentos que le han pasado.• min() : devuelve el valor mínimo entre los argumentos que le han pasado.• pow() : devuelve el valor del primer argumento pasado, elevado al valor del segundo argumento.• random() : devuelve un número aleatorio comprendido entre 0 y 1.• round() : devuelve su argumento redondeado al entero más cercano.• sin() : devuelve el seno expresado en radianes.• sqrt() : devuelve la raíz cuadrada.• tan() : devuelve la tangente.

Cuando las fechas se indican en la misma referencia horaria, con una instrucción ifconfiguramos los mensajes que la función debe devolver: si el evento es posterior a hoy, es decir, su fecha es mayor que la fecha actual, el mensaje contendrá el número de días que faltan para el event; si no, indicará que la fecha ya ha pasado.

if (fechaEvento > hoy) {return `Faltan ${(fechaEvento.getTime() - hoy.getTime()) / milsegEnUnDia} días a ${NombreEvento}`;} else {return 'La fecha ya pasó'}

En nuestro ejemplo, hemos pasado a la función los valores (año-mes-día) para construir una fecha, pero nada nos impide pasar a la función directamente un objeto fecha:

function cuantosDias( fecha, evento) {let hoy = new Date();const milsegEnUnDia = 1000 * 60 * 60 * 24hoy.setHours(0, 0, 0, 0);const diferenciaHoras = Math.abs(fecha.getTimezoneOffset() / 60) - Math.abs(hoy.getTimezoneOffset() / 60);hoy.setHours(hoy.getHours() - diferenciaHoras);if (fechaEvento > hoy)return `Faltan ${(fecha.getTime() - hoy.getTime()) / milsegEnUnDia} días para ${evento}`;elsereturn 'La fecha ya pasó'} const fechaEvento =new Date(2017, 11, 25);document.getElementById('output').innerHTML = cuantosDias(fechaEvento, 'Navidad');

Puedes encontrar este ejemplo en el archivo FuncionesParametros2 .html

Funciones anónimas

En los ejemplos con los que hemos trabajado hasta ahora, siempre hemos asignado un nombre a las funciones. JavaScript también permite crear funciones anónimas y asignarlas a una variable. Esta operación es posible porque en JavaScript functiones un tipo que se puede almacenar en una variable. En otros lenguajes esto no es posible.

let suma = function (x,y){return x + y;}console.log(suma(34,67));

Puedes encontrar este ejemplo en el archivo FuncionesAnonimas .html

Al utilizar la variable, podemos especificar entre sus paréntesis los parámetros que deseamos utilizar.

Las funciones anónimas también pueden ser utilizadas como parámetros para otras funciones. A lo largo de este libro, conoceremos ejemplos de este uso.

El área de validez de variables y constantes

Cuando se empiezan a utilizar funciones, es preciso prestar atención al área de validez de variables y constantes, es decir, a las partes del código donde variables y constantes pueden ser utilizadas. En nuestro ejemplo, hemos declarado la constante diadentro de la función EsFinDeSemana.

function EsFinDeSemana() { const dia = new Date().getDay();return dia === 0 || dia === 6;}

La constante existe solo dentro de la función y no puede ser utilizada fuera de ella. Por esta razón, podemos decir que el área de validez(en inglés scope ) de la constante diaes la función esFinDeSemana. También se dice que diaes una constante local de la función esFinDeSemana. El mismo discurso vale para las variables.

Si definimos una variable o una constante fuera de una función, esta se denomina globaly puede ser utilizada en cualquier lugar, incluso en posibles funciones, y mantiene su valor durante toda la ejecución del código.

Lo que acabamos de explicar es la teoría general referente al área de validez de las variables.

ECMAScript 6 presenta una aclaración más: el área de validez a nivel de bloque(blocked-level).

Tanto letcomo constgeneran variables y constantes a nivel de bloque.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «JavaScript: Guía completa»

Представляем Вашему вниманию похожие книги на «JavaScript: Guía completa» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «JavaScript: Guía completa»

Обсуждение, отзывы о книге «JavaScript: Guía completa» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x