Не могу сделать аналог вывода простых чисел. В чем проблема?
чтоб разобраться как работают вложенные циклы попробуйте напечатать таблицу умножения как на тетрадке сзади, можете даже два варианта где 9 столбиков и где квадратная с цифрами 
ну а чтоб преобразовать цикл for в цикл while надо просто оставить середину из цикла for (условие выхода) в while, итератор вынести перед циклом (старт), инкримент поместить в тело цикла
Вы не учли, что оператор continue внутри цикла - это не просто переход, это выполнение очередного шага цикла с изменением счётчика.
let i = 2;
nextPrime:
while (i <= 10) {
  const limit = Math.sqrt(i);
  let j = 2;
  while (j <= limit) {
    if (i % j === 0) {
      j += 1;
      i += 1;
      continue nextPrime;
    }
    j += 1;
  }
  console.log(i);
  i += 1;
}