Maison  >  Article  >  interface Web  >  Comment fonctionne \"options = options || {}\" en JavaScript ?

Comment fonctionne \"options = options || {}\" en JavaScript ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-04 07:43:30218parcourir

How Does

Comprendre l'énigme de "options = options || {}" en JavaScript

L'énigmatique syntaxe JavaScript, "options = options || {}" a laissé de nombreux développeurs perplexes. Cet extrait a un objectif spécifique : initialiser les paramètres d'objet avec des valeurs par défaut.

Considérez la fonction suivante :

function test (options) {
  options = options || {};
}

Lors de l'appel de cette fonction sans arguments, "options" supposera un objet vide en défaut. Ceci est réalisé grâce à l'opérateur « OU logique (||) ».

L'opérateur « OU logique » évalue deux opérandes. Si le premier opérande est "faux" (équivalent à 0, nul, non défini, chaîne vide, NaN ou faux), l'opérateur renvoie le deuxième opérande.

Dans notre cas, si "options" n'est pas fourni ou est "faux", l'opérateur lui affecte un objet vide. Cela définit effectivement une valeur par défaut pour le paramètre "options".

Une évolution d'ES6 : paramètres de fonction par défaut

Avec l'avènement d'ES6, JavaScript a introduit une solution plus propre pour définition des paramètres par défaut :

function test (options = {}) {
  //...
}

Ici, le paramètre "options" reçoit la valeur par défaut {} si aucun argument n'est fourni ou s'il est explicitement défini sur "indéfini". Contrairement à l'approche « OU logique », d'autres valeurs « fausses » ne déclencheront pas la valeur par défaut.

Cette syntaxe simplifiée offre une plus grande clarté et cohérence dans la maintenance de la base de 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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn