Comprendre la surcharge de fonctions en JavaScript
Contrairement aux langages de programmation classiques, JavaScript n'autorise pas plusieurs fonctions portant le même nom. Par conséquent, la surcharge de fonctions, où les fonctions portant le même nom peuvent prendre différents ensembles d'arguments, peut devenir difficile.
Aspects multiples dans la gestion des arguments
JavaScript aborde la surcharge d'arguments via :
Arguments variables avec jQuery
jQuery utilise souvent des arguments variables. Par exemple, sa méthode data() a quatre utilisations différentes :
<code class="javascript">obj.data("key"); // Get value associated with a key obj.data("key", value); // Set value for a key obj.data(); // Get all keys/values obj.data(object); // Set keys/values from an object</code>
La fonction fait la distinction entre ces formes en vérifiant la présence ou le type d'arguments.
Arguments nommés avec nommé Objets
Au lieu d'arguments nommés, JavaScript transmet généralement une carte propriété/valeur en tant qu'objet. Par exemple, la méthode $.ajax() de jQuery accepte un objet avec des propriétés nommées représentant des options.
<code class="javascript">$.ajax({url: "example.com", data: myArgs, dataType: "json"}).then(function(result) { // Process result });</code>
À l'intérieur de la fonction, l'objet transmis est interrogé pour déterminer les arguments nommés à utiliser.
Valeurs par défaut pour les arguments dans ES6
ES6 a introduit des valeurs par défaut pour les arguments de fonction, permettant de définir des propriétés et des valeurs par défaut pour les arguments nommés.
<code class="javascript">function selectEntries({ start=0, end=-1, step=1 } = {}) { ··· } selectEntries({start: 5}); // Uses default values for end and step selectEntries({start: 5, end: 10}); // Override only end</code>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!