为什么不输出a为true的情况下,还是哪里有什么问题,求解

``
/*在页面中接受用户输入的数字,并判断是否为质数,
质数,只能被1和自身整除的数,1既不是质数也不是合数,质数必须是大于1的自然数。
*/

     var num = prompt("请输入一个大于1的数字");
        if ( num > 1){
            var b = true;
            for (var a = 2; a <= num ; a++){
                if ( num % a == 0 ){
                    b = false;
                }
            }
            if ( b){
                alert(num + "它是一个质数");
            }
            else {
                alert(num + "他不是一个质数")
            }
        }
        else {
            alert("请输入一个有效的数值")
        }

```

换成如下代码


var num = prompt("请输入一个大于1的数字");
        if (num > 1) {
            var b = true;
            for (var a = 2; a < num; a++) {
                if (num % a == 0) {
                    b = false;
                }
            }
            if (b) {
                alert(num + "它是一个质数");
            } else {
                alert(num + "他不是一个质数")
            }
        } else {
            alert("请输入一个有效的数值")
        }

你的for循环a<=num改成a<num