• [^] # Re: Il manque une faiblesse !

    Posté par (site web personnel) . En réponse au journal Réflexions à propos de NodeJS et de Javascript plus globalement. Évalué à 3.

    C'est pas faux.

    J'aurais du écrire

    var assert = function(test) {
     var res = /return ([^;]+);/.exec(test);
     if (!test()) {
     console.error("Oups, '" + res[1] + "' is false.");
     } else {
     console.info("Yeah, '" + res[1] + "' is true.");
     }
    };
    
    

    Après, j'utilise en général .test parce que je trouve ça parfois plus simple/lisible

    var matches = /return ([^;]+);/.exec(test);
    if (matches != null && matches.length > 1) {
     console.log(matches[1]);
    }
    // vs
    if (/return ([^;]+);/.test(test)) {
     console.log(RegExp.1ドル);
    }
    
    

    Après, ça dépend pas mal du contexte, lorsque j'ai une regexp complexe, du traitement important à faire derrière, j'utilise exec. Lorsque j'ai une regexp toute bidon comme ici, dont je connais exactement à l'avance le résultat et dont je recherche juste un élément je fais au plus simple.