[JavaScript] Finding Prime Numbers Up to N

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
<script type="text/javascript">
var arr = new Array();
var flag = new Array(1001);
for (var i = 1; i <= 1000; i++) {
    flag[i] = 0;
}
for (var i = 2; i <= 1000; i++) {
    if (flag[i] == 0) {
        flag[i] = 1;
        arr.push(i);
        for (var j = 1; j * i <= 1000; j++) {
            flag[j*i] = 1;
        }
    }
}
var ans = "2";
for (var i = 1; i < arr.length; i++) {
    ans = ans + "," + arr[i].toString();
}
alert(ans);
</script>

This uses the Sieve of Eratosthenes, which has good performance. Tested and working in Chrome. Hope it helps!

This was my answer on Baidu Zhidao (a Q&A platform).