Как перемешать числа с текстовым полем в javascript

Если я помещаю числа в текстовое поле следующим образом:

418484
418485
418486

Я хочу, чтобы они перемешались, и хочу получить такой результат:

418485
418484
418486

Я не хочу, чтобы значения менялись - мне просто нужен какой-нибудь JavaScript или jQuery, который перемешает эти числа и выдаст мне результат на моей веб-странице.

Пожалуйста, покажите нам свои усилия.

Derviş Kayımbaşıoğlu 09.12.2018 00:41
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
2
1
256
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я нашел эту отличную функцию перемешивания от этот ответ:

function shuffle(array) {
  var currentIndex = array.length, temporaryValue, randomIndex;

  // While there remain elements to shuffle...
  while (0 !== currentIndex) {

    // Pick a remaining element...
    randomIndex = Math.floor(Math.random() * currentIndex);
    currentIndex -= 1;

    // And swap it with the current element.
    temporaryValue = array[currentIndex];
    array[currentIndex] = array[randomIndex];
    array[randomIndex] = temporaryValue;
  }

  return array;
}

Оттуда вы можете просто получить значение ввода <textarea> и разделить его на основе разрывов строк:

var numbers = document.getElementById("numberInput").value.split("\n");

Или, если вы предпочитаете пробелы:

var numbers = document.getElementById("numberInput").value.split(" ");

Затем просто передайте его в функцию:

var shuffledNumbers = shuffle(numbers);

И покажите их на странице, перебирая их и записывая в документ:

shuffledNumbers.forEach(function(currentNumber) {
    document.write(currentNumber + "<br />");
})

И вот так!

Обновлено:

Если вы хотите вместо этого отображать перемешанные числа в другом <textarea>:

var output = document.getElementById("output");
shuffledNumbers.forEach(function(currentNumber) {
    output.innerHTML += currentNumber + "\n";
})

но мне нужно показать перемешанные числа в другом текстовом поле, когда я пытаюсь, что функция не работает

Mahmoud Adel Mansour 09.12.2018 00:24

Итак, вы хотите отобразить перемешанные числа в другой текстовой области? Хорошо, я отредактирую свой ответ.

Jack Bashford 09.12.2018 00:35

@MahmoudAdelMansour Я отредактировал свой ответ, решает ли он вашу проблему?

Jack Bashford 09.12.2018 00:38

буксировкой (запись) или (innerHTML) несколько раз работает, и теперь у меня нет ни одной белой страницы или пустой области вывода текста

Mahmoud Adel Mansour 09.12.2018 01:07

когда я вставляю более 100 номеров

Mahmoud Adel Mansour 09.12.2018 01:09

Странно - у меня он отлично работает. Может быть, у него проблемы с рендерингом или обработкой?

Jack Bashford 09.12.2018 01:51

Другие вопросы по теме