JavaScript: Преобразуйте текстовую область в массив

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

function parseInteger(value) {
    if(value === '') return NaN;
    const number = Number(value);
    return Number.isInteger(number) ? number : NaN;
}
parseInteger("4")            // 4
parseInteger("5aaa")         // NaN
parseInteger("4.33333")      // NaN
parseInteger("aaa");         // NaN
28
задан Matrym 19 February 2010 в 11:13
поделиться

5 ответов

Это должно работать (проверено в Firefox и Google Chrome):

var arrayOfLines = $('#textAreaID').val().split('\n');
54
ответ дан 28 November 2019 в 02:35
поделиться

Кроссплатформенный путь:

var area = document.getElementById("area");             
var lines = area.value.replace(/\r\n/g,"\n").split("\n");
12
ответ дан KIM Taegyoon 20 November 2019 в 02:14
поделиться

Вы можете попробовать эту функцию:

function textToArray(){
  var someArray = [];    
  var nameList = $("#txtArea").val();

  $.each(nameList.split(/\n/), function (i, name) {     

      // empty string check
      if(name != ""){

          someArray.push(name);

      }        
});

взято из: КОНВЕРТ TEXTAREA СОДЕРЖИТСЯ ДЛЯ Массива с использованием JQUERY

0
ответ дан Yasser 20 November 2019 в 02:14
поделиться

Этот метод хорошо работал:

var textArea = document.getElementById("textAreaId");
var arrayFromTextArea = textArea.value.split(String.fromCharCode(10));
0
ответ дан סטנלי גרונן 20 November 2019 в 02:14
поделиться
var stringArray = document.getElementById('textarea').value.split('\n');
12
ответ дан 28 November 2019 в 02:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: