Comment tester si un nombre est premier en JavaScript

La fonction suivante retoure vrai (true) si le paramètre n est un nombre premier :

// Return true if n is prime
function isPrime(n) 
{
    // Check if n is less than 2 => not prime
    if (n<2) return false;

    // Loop from 2 to square root of n
    for (let i = 2, end=Math.sqrt(n); i <= end; i++) 
        // If i is a divisor of n, n is not prime
        if (n % i == 0) return false;

    return true;
}

Cette fonction vérifie tous les diviseurs compris entre 2 et racine carrée de n. Si n n'est pas un nombre premier, il existe nécessairement un diviseur dans cet interval.

Voir aussi


Dernière mise à jour : 04/05/2023