ребята, а можно мастер-класс? Сможете решить это с помощью метода reduce?)
const getPrimes = n => {
const a = [];
for (let i = 1; i <= n; i++) {
let ok = true;
for (let j = 1; j < a.length; j++) {
if (i % a[j] === 0) {
ok = false;
}
}
if (ok === true) a.push(i);
}
return a;
}
|
Цитата:
const getPrimes = n => {
const a = [];
lab: for (let i = 1; i <= n; i++) {
for (let j = 1; j < a.length; j++) {
if (i % a[j] === 0) {
continue lab;
}
}
a.push(i);
}
return a;
}
https://learn.javascript.ru/while-fo...break-continue |
Цитата:
lab: |
по ссылке, которую вы дали, не нахожу чтобы понять что такое метка lab; и как оно работает
|
Цитата:
|
Цитата:
|
:) :write:
const getPrimes = length => {
return Array.from({
length
}, (_, i) => ++i).reduce((a, b) => {
let max = Math.floor(Math.sqrt(b));
if (a.slice(1, max).every(e => b % e)) a.push(b);
return a
}, [])
}
console.log(getPrimes(120))
|
Цитата:
|
| Часовой пояс GMT +3, время: 19:05. |