English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Análisis de ejemplo de uso de arguments.callee en funciones de Javascript

Este ejemplo explica el uso de arguments.callee en las funciones de Javascript. Compartido con todos los grandes hablantes, aquí está la información específica:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <title></title>
  <script type="text/javascript">
    //método1, este método no puede implementar la factorial recursiva después de que el nombre de la función fac apunte a una nueva función
//    function fac(num) {
//      if (num <= 1) {
//        devolver 1;
//      }
//      else {
//        devolver num * fac(num - 1);
//      }
    //método2
    function fac(num) {
      if (num <= 1) {
        devolver 1;
      }
      else {
        devolver num * arguments.callee(num - 1);  //arguments.callee representa la referencia al método actual
      }
    }
    window.onload = function () {
      var func = fac;
      fac = function () {  //apunta a una nueva función
        devolver 1;
      }
      alert(func(5));  //usando el método uno se output5, utilizando el método dos se output5el valor de la factorial
      alert(fac(5));   //salida1
    }
  </script>
</head>
<body>
</body>
</html>

Los lectores interesados en más contenido relacionado con JavaScript pueden consultar las secciones especiales de este sitio: 'Resumen de técnicas de operaciones de arrays de JavaScript', 'Resumen de técnicas de operaciones matemáticas de JavaScript', 'Resumen de técnicas de estructuras de datos y algoritmos de JavaScript', 'Resumen de técnicas de efectos de cambio de JavaScript', 'Resumen de técnicas de búsqueda de JavaScript', 'Resumen de técnicas de efectos de animación de JavaScript', 'Resumen de técnicas de errores y depuración de JavaScript' y 'Resumen de técnicas de recorridos de JavaScript'.

Espero que el contenido de este artículo sea útil para el diseño de programas JavaScript de todos.

Declaración: El contenido de este artículo se obtiene de la red, pertenece al propietario original, el contenido se contribuye y carga espontáneamente por los usuarios de Internet, este sitio no posee los derechos de propiedad, no se ha procesado editorialmente y no asume la responsabilidad legal correspondiente. Si encuentra contenido sospechoso de copyright, le invitamos a enviar un correo electrónico a: notice#oldtoolbag.com (al enviar un correo electrónico, reemplace # con @) para denunciar y proporcionar evidencia relevante. Una vez confirmado, este sitio eliminará inmediatamente el contenido sospechoso de infracción.

Te gustará