J'ai relu le code d'une angularjs usine afin de mieux comprendre comment il fonctionne. Le code contient un if
déclaration que je ne comprends pas tout.
Dans un plnkr de démonstration, l'auteur écrit ceci:
if ((+!!config.template) + (+!!config.templateUrl) !== 1) {
throw new Error('Expected modal to have exactly one of either `template` or `templateUrl`');
}
Il est légèrement différent dans le dépôt github:
if (!(!config.template ^ !config.templateUrl)) {
throw new Error('Expected modal to have exactly one of either `template` or `templateUrl`');
}
De toute évidence, par le message d'erreur c'est de vérifier pour voir si l'un des deux existe. Je ne suis pas sûr de savoir comment il en vient à la conclusion. Je n'ai pas été en mesure de trouver toute l'information sur l' ^
ou +!
Ma question est: Comment cela s'déclaration de travaux? (^
ou +!
ou +!!
plus précisément)