function getPrimeNumber(arr) {
return arr.filter(function (number) {
if (typeof number !== 'number' || number<2) {
// 不是数字或者数字小于2
return false;
}
if (number === 2) {
return true;
} else if (number % 2 === 0) {
// 排除偶数
return false;
}
// 从3开始,且已经排除偶数,所以每次加2
for(var i = 3; i < number; i += 2) {
if (number % i === 0) {
return false;
}
}
return true;
})
}
getPrimeNumber(Array.from(new Array(101).keys())); 结果: (25) [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]