js判断一个数是否是质数(素数)

方文锋  2023-05-08 11:58:01  1027  首页学习JavaScript

使用js判断一个数是否是质数,代码如下:


 

/**
 * 是否存在[true存在,false不存在]
 * @param argument
 * @param {array} opt 这里面的值是代表“不存在”
 * @return {boolean}
 */
function is_exist(argument, opt) {
    opt || (opt = ["", null, false, undefined]);
    for (var k in opt) {
        if (opt[k] === argument) {
            return false;
        }
    }
    return true;
}

/**
 * 是否是质数(素数)
 * @param {number} number
 * @param {boolean} range_num true的话返回number数字范围的所有质数
 * @returns {boolean|array|*}
 */
function prime_number(number, range_num) {
    if (is_exist(range_num)) {
        var arg3 = [];
        for (var i = 2; i <= number; i++) {
            prime_number(i) && arg3.push(i);
        }
        return arg3;
    } else {
        number = parseInt(number);
        if ( number <= 3) {
            return number > 1;
        } else {
            for (var n = 2; n < number; n++) {
                if (number % n === 0) {
                    return false;
                }
            }
        }
        return true;
    }
}  


使用js判断一个数是否是质数