<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>素数</title>
<script>
//方法1
let data1 = +new Date();
let a = 0;
let arr = [];
for (i = 2; i < 100; i++) {
let k = 0;
for (j = 2; j < 100; j++) {
if (i % j == 0) {
k++;
// 因为素数的因数只有1和它本身,故k值为1就是素数
}
a++;
if (i < j || k > 1) {
break;
}
}
if (k == 1) {
document.write(i + ", ");
arr.push(i);
}
}
let sum1 = arr.reduce((last, item) => {
return last + item
}, 0)
let data2 = +new Date();
console.log(a, sum1, arr, '=======');
//方法2
var sum = 0;
let b = 0;
let arr2 = [];
for (var i = 2; i <= 2000; i++) {
let m = 1;
for (var j = 2; j <= Math.sqrt(i); j++) {
if (i % j == 0) {
m = 0;
break;
}
b++;
}
if (m == 1) {
arr2.push(i);
sum += i;
}
}
let data3 = +new Date();
console.log(b, sum, arr2, '-----');
console.log(data2 - data1, data3 - data2);
</script>
</head>
<body>
</body>
</html>