Skip to content

Instantly share code, notes, and snippets.

@julianshen
Created November 4, 2016 06:17
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save julianshen/0c283f6f76abf258f9c0d4292a1e14f9 to your computer and use it in GitHub Desktop.
Save julianshen/0c283f6f76abf258f9c0d4292a1e14f9 to your computer and use it in GitHub Desktop.
function isPrime(n) {
if(isNaN(n) || !isFinite(n) || n%1 || n<2) {
return false;
}
if(n%2==0) return (n==2);
if(n%3==0) return (n==3);
var m = Math.sqrt(n);
for(var i = 5 ; i < m; i++) {
if(n%i == 0) {
return false;
}
}
return true;
}
function* primeGen(x) {
var last = x;
if(isNaN(last)) {
last = 2
}
while(true) {
if(isPrime(last)) {
yield last;
}
last++
}
}
var pgen = primeGen()
pgen.next();
for(var i = 0;i < 100;i++) {
console.log(pgen.next().value);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment