0
votes

Est-il possible d'attribuer de manière conditionnelle une valeur en JavaScript?

Je cherche à raccourcir cette ligne de code. XXX PRE>

est-il possible de le réécrire avec un seul cas de nom de variable comme SO: P>

const variableName = variableName | 1?


2 commentaires

Tandis ou un droit si est aussi agréable que possible à moins que variablename est faux à l'origine, auquel cas vous pouvez faire variablename = variablename || 1 . Ce n'est pas aussi généralement applicable, car il exige que la valeur initiale du nom variablename est faussée.


Voulez-vous vraiment inverser un booléen ...? foo =! foo


4 Réponses :


0
votes

Vous pouvez le faire avec la syntaxe suivante:

const variableName = variableName || 1


0 commentaires

1
votes
const variableName = (variableName === 0 && 1) || variableName;

1 commentaires

Semble que l'objectif était de raccourcir cette ligne de code



1
votes

| code> est un binaire ou un opérateur || code> est un opérateur logique ou opérateur


aussi, vous ne pouvez pas faire P>

const otherVariableName = 0;

const variableName = otherVariableName || 1;

console.log(variableName);


0 commentaires

1
votes

Techniquement, const variablename = variablename | 1 code> n'est pas valide parce que vous ne pouvez pas redéclaré variablename code> qui a déjà été déclaré (et en mode strict, vous ne pouvez pas vous appeler ne pas savoir s'il a ou n'a pas été déclaré dans la portée actuelle).

Un motif qui devient assez lot est p> xxx pré>

ou alternativement p> xxx pré>

ou P>

function constVersion(variableName) {
  const constName = variableName | 1;
  //do something with constName
}


0 commentaires