/ / JavaScript: función en función. Lenguaje de programación JS

JavaScript: función en la función. Lenguaje de programación JS

Las ideas de la formación de contenido dinámico en los recursos web se convirtieron en la norma. Las páginas estáticas y la construcción del sitio de la plantilla finalmente han completado su misión.

Sin embargo, un recurso web moderno no necesita ser representado por un conjunto de páginas, generado por el servidor y actualizado por el navegador (JS + AJAX).

función javascript en función

Un recurso web en el momento de la llegada de un visitante puede ser un par de encabezados para el protocolo, un texto en la "cabeza", varias líneas de código en el "cuerpo" y todo. El resto "venir con una pista"En el proceso del trabajo del visitante es un sitio ideal o se esfuerza por ser tal.

El lugar de descripción y la esencia de las funciones

JavaScript es experiencia adquirida durante muchas décadas. Él tiene un historial de desarrollo significativo, un equipo moderno calificado de creadores y desarrolladores. El lenguaje está bien pensado, es confiable, hermoso y brinda la oportunidad real para que los desarrolladores escriban código decente y se mejoren.

javascript error la operación es insegura

El concepto de un algoritmo fuera de la función está ausente aquíprincipio. Por supuesto, el desarrollador puede insertar un script en cualquier lugar de la página, colocar el código en él y se ejecutará. Pero ¿cuál es el punto en el código que se ejecuta una sola vez: al cargar (sobrecarga) página? A menos que sea posible establecer valores iniciales de cualquier variable insignificante.

Un script es un lugar para describir las variables requeridas yfunciones, en lugar de un buen pedazo de código escrito por sí mismo. Es el conjunto de funciones que es significativo y significativo, tal vez su conexión directa mutua, pero más a menudo es diferente. El lugar de descripción de la función y el lugar de su aplicación no es el mismo.

No es absolutamente necesario que la función seallamar a otra función directamente, puede hacerse indirectamente a través de la generación de código dinámico. El visitante toma una decisión en el marco de este código y funciona un sistema completamente diferente de funciones.

Dinámica funcional

La dinámica funcional no es solono tanto los controladores asignados a los elementos de la página, estas son las funciones que forman los elementos de la página, y los controladores inmediatos también pueden cambiar.

retorno de javascript

La acción en la página se desarrolla en función de sus elementos y el comportamiento del visitante en ella. Los movimientos del mouse, los botones del teclado, los clics, los eventos de elementos y otras circunstancias llevan al lanzamiento de las funciones deseadas.

Inicialmente no hay consistencia yNo hay paralelismo. Hay una respuesta adecuada de un recurso web a eventos. La rapidez con la que JavaScript ejecuta una función particular depende de muchos factores técnicos (computadora, líneas de comunicación) y semánticos (algoritmo lógico, área temática, significado de la tarea).

De hecho, se puede argumentar que algo funcionó.en paralelo, pero algo se cumplirá después de algo, pero no tiene un significado especial. Es importante que la función de JavaScript sea la capacidad de crear una respuesta adecuada a las acciones del visitante.

Esta es una nueva forma de pensar en el desarrollo: ¡el procesamiento de información distribuido en las profundidades de un solo navegador!

Sintaxis de variables y funciones.

Las variables de JavaScript se colocan como en la etiqueta."Script", y en el cuerpo de la función. Las funciones se definen de la misma manera. No hay ningún punto en particular para escribir otra función dentro de una función, pero esto puede ser necesario por varias razones bien fundadas.

La descripción de la función generalmente comienza con la palabra clave "función", seguida de su nombre, la lista de argumentos entre paréntesis separados por comas y el cuerpo de la función entre paréntesis.

función de paso javascript para funcionar

Este ejemplo describe dos funciones que proporcionan el intercambio de AJAX entre la página y el servidor. La variable scXHR se describe anteriormente, por lo tanto, está disponible tanto en InitXML como dentro de WaitReplySC.

El nombre de la función y el parámetro "función".

Aquí se presentó una versión asíncrona, cuandoLa función javascript en la función se llama después de que el servidor responde. Al mismo tiempo, después de recibir una respuesta del servidor, WaitReplySC se refiere a las etiquetas de la página, las llena con la información recibida y llama a otras funciones que pueden activar la próxima solicitud al servidor.

También es importante tener en cuenta que WaitReplySC es una función. Pero en linea scXHR.onreadystatechange = WaitReplySC Se pasa como parámetro. Esta es una regla general para transferir funciones a otras funciones como parámetros. Especifiqué paréntesis y les pasé su parámetro (parámetros) - la función se ejecutará inmediatamente. Pasó sólo el nombre, y qué con eso. La llamada a la función será realizada por el que recibió su nombre.

La funcionalidad implementada a través de AJAX le permite realizar llamar a la función javascript a través de los datos recibidos desde el servidor. De hecho, al enviar una solicitud al servidor, es posible que una u otra función no "sepa" a qué función está accediendo y con qué información.

Función de salida y su resultado.

Puedes escribir cualquier operador en el cuerpo de la función.Lenguaje, que, de hecho, es para este propósito. Las variables dentro y fuera de la función están disponibles dentro de la función, pero no las descritas en otras funciones.

función de javascript llamada

Si quieres que la función vuelvaComo resultado, puede utilizar el operador de devolución de JavaScript: return. Puede haber un número suficiente de declaraciones de devolución en el cuerpo de la función. No es necesario en absoluto que todos devuelvan el resultado del mismo tipo.

Por lo general, los desarrolladores aceptan esta oportunidad y, dependiendo de la situación, toman la decisión de salir de la función tan pronto como sea posible.

No es necesario ejecutar todo el algoritmo de la función cuando es posible salir antes.

Argumentos de función

Los argumentos a la función se pasan a través de la listacoma, entre paréntesis y están inmediatamente después de su nombre. Los nombres de variables se utilizan como argumentos, pero también puede pasar valores directamente. Para pasar una función a una función en JavaScript, solo necesita especificar su nombre sin paréntesis.

variables javascript

Dentro de la función, la variable variables está disponible, tener una propiedad longitud Puede referirse a cualquier argumento de función a través de argumentos [0], argumentos [1], ... hasta los últimos argumentos [argumentos.longitud-1].

Cambiar el argumento de la función está realmente dentro.Funciones, pero no fuera de ella. Para cambiar algo fuera de la función, debe utilizar la devolución del operador de JavaScript, a través de la cual se transfiere el valor necesario al exterior.

Una vez completada la función, todo eso.Fue asociado con su ejecución, será destruido. En el tiempo de ejecución, la función puede cambiar las variables externas, excepto las descritas en otras funciones, incluidas las internas.

Argumentos tiene una propiedad calificada queestá destinado a llamar a una función que se está ejecutando en un momento dado. Si se llama a sí mismo, entonces la opción de la función JavaScript en la función permitirá la recursión.

Uso de funciones

La principal preocupación de la función es el servicio de eventos.navegador Para hacer esto, casi todas las etiquetas tienen la capacidad de especificar el nombre del evento y la función que lo procesa. Puede especificar varios eventos, pero solo se especifica una función para cada evento.

Una función puede servir múltiples elementos de página y múltiples eventos. Por medio del parámetro "esto" es posible transferir información a la función desde donde fue llamada.

Uso clásico de las funciones de JS -manejadores de eventos en elementos. En este ejemplo, se llamará a la función scfWecomeGo () o scfWelcomeCancel () en el formulario de inicio de sesión / salida del visitante, y al seleccionar el modo de funcionamiento, scfMenuItemClick (esto).

retorno de javascript

En este último caso, el parámetro es "este",lo que le permite descubrir milagrosamente de qué diva se originó la llamada. En general, JavaScript está tan cualitativamente implantado en el DOM y le permite navegar por sus elementos de manera tan conveniente, para recopilar la información necesaria, que la dinámica de la página puede ser simplemente impredecible.

La función no tiene que devolver una cadena.Caracteres, números u otras funciones. Puede devolver un elemento HTML completo, y en el que habrá un número necesario de elementos, con sus propios controladores de eventos.

Al colocar dicho elemento en la página, el desarrollador crea una nueva funcionalidad, que es buena en términos de resolver el problema y satisfacer los intereses de los visitantes, pero es bastante difícil en términos de implementación.

Comenzando un desarrollo tan completo,Es fácil confundirse en su propio código, en llamadas a funciones, en los momentos en que se forma uno u otro contenido de una u otra parte de la página. Antes de tomar esta dirección de desarrollo, no hace daño sopesar todo bien.

Acerca del pensamiento distribuido

El desarrollador debe pensar en el nivel de todos los elementos de la página, en el nivel de todos los eventos y tener una idea clara de cómo sucede todo en realidad. Es difícil, pero este trabajo lo vale.

funciones de matriz javascript

En JavaScript, la ejecución de una función puede serpospuesto hasta algún evento, pero puede haber muchas de estas funciones, e incluso los eventos tienden a extenderse y caer en el "alcance" de varios manejadores.

javascript error la operación es insegura

En este ejemplo, en algún lugar previamente llamadoLa función que inició la creación del elemento del menú de navegación de archivos. Se supone que la organización de paginación, es decir, solo hay siete archivos en la ventana que se pueden eliminar y procesar. Puede navegar haciendo clic en la línea del archivo, o mediante las flechas del teclado, o en bloques de siete líneas.

En cada caso, tiene sus propias funciones. En otras palabras, en un ejemplo tan simple, necesita escribir un par de docenas de funciones que responderán a varios eventos, y algunas de estas funciones manejarán varias opciones y situaciones que no se relacionan con eventos en absoluto.

ejecución de la función javascript

Por ejemplo, al eliminar una cadena, la parte inferior debemover hacia arriba Para hacer esto, necesita hacer una nueva selección, que sea trillada y amplia en términos de recursos, o recalcular las líneas, usar las funciones de matrices en javascript y lograr el objetivo con elegancia.

Argumentos y resultados de funciones.

Javascript te permite lanzar el código aEstado "completamente funcional". Normalmente, cuando el argumento de la función es una función. Se permite una opción cuando la función devuelve una función. JavaScript lo toma con bastante calma.

Este es un buen mecanismo, pero bastante complicado en términos de implementación. Técnicamente, todo está permitido, asegurando semánticamente que la lógica de transferir "funcionalidad" es posible solo para un desarrollador calificado.

función de paso javascript para funcionar

Cuando en función javascript en función - donde seafue, pero cuando una función genera una función, y una más, es bastante difícil hacer un seguimiento de la lógica. De hecho, la pregunta no es aplicar las calificaciones, la pregunta es obtener un resultado seguro y correcto.

El cuidado del desarrollador es claro y simple. Hay una tarea, necesita una solución, no un error como "error de JavaScript, la operación es insegura", una pantalla limpia o una detención de todo el motor del navegador.

Si el argumento es una función, entoncesel desarrollador pasa una variable con propiedades especiales, es decir, no es un número, ni una cadena, ni un objeto. Pero el uso de tal argumento puede llevar al hecho de que las variables externas cambian y el resultado de la ejecución de la función será. Dependiendo del hecho de que los cambios adecuados serán transferidos.

Ejecución del código generado.

Implementar ejecución del código generado en.Proceso de otro código, es posible mediante "eval". Esto no se considera una solución excelente, pero a menudo no puede complicar el código con funciones innecesarias, sino limitarse a la formación banal de una línea de código JavaScript y simplemente ejecutarlo.

función devuelve la función javascript

En este ejemplo, la cadena de inserción se forma enactuando div alguna información. El número de diva y el contenido de la información son diferentes para diferentes posiciones, por lo tanto, se garantiza que tal solución en esta situación no proporcionará la situación "error de javascript porque la operación es insegura", pero dará el efecto deseado de manera confiable.

El ejemplo del autor no es una imagen

El matiz del paradigma de JavaScript "función en función"

Si hay una oportunidad de hacerlo sin excesos, es mejor usarlo. Todas las opciones enumeradas son buenas. Por supuesto, en muchos casos esta es la única solución.

El clásico ejemplo de recursión: computación factorial. Es bastante difícil escribir un algoritmo que haga un bucle, pero es muy simple ir más allá de los límites del valor. Factorial está creciendo demasiado rápido.

Sin embargo, tanto la recursión como una función que llama a otra función que puede hacer una devolución de llamada válida son la norma de las cosas.

Por ejemplo, una mesa regular. Puede haber otras tablas en la tabla. La anidación no puede ser limitada. Escribir un conjunto de funciones para cada tabla es demasiado lujo.

Hay muchos ejemplos de este tipo, y todosEstas serán tareas reales y urgentes, en absoluto del campo de la programación. Es por eso que el problema radica precisamente en el hecho de que no puede prescindir de los excesos, el sistema de funciones creado, más precisamente, su depuración y posterior trabajo confiable se convierte en una preocupación no de JavaScript, sino del desarrollador.

</ p>>
Leer más: