我原本的第一个逻辑:

    1. isPrime(num) {
    2. let res = true;
    3. for (let i = 2; i <= num / 2; i++) {
    4. if (num % i === 0) {
    5. res = false;
    6. break;
    7. }
    8. }
    9. return res;
    10. }

    后来老师说了,相乘的因数一个大一个小的都分布在开平方的数值的两边,,,我觉得我都忘光了数学原理了。耻辱!

    我优化后:

    1. isPrime(num) {
    2. let res = true, i = 2;
    3. while (res && i <= Math.sqrt(num)) {
    4. num % i === 0 && (res = false);
    5. }
    6. return res;
    7. }