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

Analisi di esempio dell'uso di arguments.callee nelle funzioni JavaScript

Questa guida spiega l'uso di arguments.callee nel contesto delle funzioni JavaScript. Condividiamo questo con la comunità di HuaGaGong e dettagliamo di seguito:

!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">
    //Metodo 1, questo metodo non permette di eseguire il calcolo della factorialia ricorsiva quando il nome della funzione fac punta a una nuova funzione
//    function fac(num) {
//      if (num <= 1) {
//        return 1;
//      }
//      else {
//        return num * fac(num - 1);
//      }
    // Metodo 2
    function fac(num) {
      if (num <= 1) {
        return 1;
      }
      else {
        return num * arguments.callee(num - 1);  // arguments.callee indica il riferimento al metodo corrente
      }
    }
    window.onload = function () {
      var func = fac;
      fac = function () {  // Pointa a una nuova funzione
        return 1;
      }
      alert(func(5));  // Output 5 usando il metodo 1, output del factorial di 5 usando il metodo 2
      alert(fac(5));   // Output 1
    }
  </script>
</head>
<body>
</body>
</html>

Leggi di più sui contenuti relativi a JavaScript per i lettori interessati: 'Riassunto delle tecniche di manipolazione degli array JavaScript', 'Riassunto delle tecniche di calcolo matematico JavaScript', 'Riassunto delle tecniche di strutture dati e algoritmi JavaScript', 'Riassunto delle tecniche di animazione JavaScript', 'Riassunto delle tecniche di ricerca JavaScript', 'Riassunto delle tecniche di debug JavaScript' e 'Riassunto delle tecniche di scorrimento JavaScript'.

Spero che il contenuto di questo articolo possa essere di aiuto a tutti nella progettazione di programmi JavaScript.

Dichiarazione: il contenuto di questo articolo è stato prelevato da Internet, il copyright spetta ai rispettivi proprietari, il contenuto è stato caricato autonomamente dagli utenti di Internet, il sito web non detiene il diritto di proprietà, non è stato editato manualmente e non assume alcuna responsabilità legale connessa. Se trovi contenuti sospetti di copyright, ti preghiamo di inviare una email a notice#oldtoolbag.com (sostituisci # con @ durante l'invio dell'email) per segnalare il problema e fornire prove pertinenti. Una volta verificata, il sito web eliminerà immediatamente i contenuti sospetti di copyright.

Ti potrebbe interessare