JavaScript динамический массив строк

Это - больше пульта дистанционного контроля, но он мог бы работать на Ваши потребности. Это в настоящее время только указывает, что поддерживает CentOS, Red Hat и Fedora.

http://www.oakwoodsystems.net/uncategorized/restarting-linux-services-remote-manager/

36
задан Brian Webster 23 February 2013 в 03:43
поделиться

6 ответов

Я имею в виду, что на странице пользователь может ввести одно число или тридцать чисел, затем он / она нажимает кнопку OK, и на следующей странице отображается массив в том же порядке, в каком он был вводится, по одному элементу за раз.

Хорошо, значит, вам сначала нужен пользовательский ввод? Есть несколько способов сделать это.

  1. Во-первых, это функция prompt () , которая отображает всплывающее окно, запрашивающее у пользователя ввод.
    • Плюсы: легко. Минусы: некрасиво, невозможно легко вернуться к редактированию.
  2. Во-вторых, используются поля html .
    • Плюсы: можно стилизовать, пользователь может легко просматривать и редактировать. Минусы: требуется немного больше кода.

Для метода подсказки сбор строк - пустяк:

var input = []; // initialise an empty array
var temp = '';
do {
    temp = prompt("Enter a number. Press cancel or leave empty to finish.");
    if (temp === "" || temp === null) {
        break;
    } else {
        input.push(temp);  // the array will dynamically grow
    }
} while (1);

(Да, это не самый красивый цикл, но уже поздно, и я устал .. ..)

Другой метод требует немного больше усилий.

  1. Поместите одно поле ввода на страницу.
  2. Добавьте к нему обработчик onfocus .
    1. Проверьте, есть ли еще один элемент ввода после этого, и если есть, проверьте, не пуст ли он.
      • Если есть, ничего не делайте.
      • В противном случае создайте новый вход, поместите его после этого и примените тот же обработчик к новому входу.
  3. Когда пользователь нажимает OK, пройти через все на странице и сохраните их в массиве.

например:

// if you put your dynamic text fields in a container it'll be easier to get them
var inputs = document.getElementById('inputArea').getElementsByTagName('input');
var input = [];
for (var i = 0, l = inputs.length; i < l; ++i) {
    if (inputs[i].value.length) {
        input.push(inputs[i].value);
    }
}

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

var div = document.createElement('div');
for (var i = 0, l = input.length; i < l; ++i) {
    div.innerHTML += input[i] + "<br />";
}
document.body.appendChild(div);

Я собрал это вместе, чтобы вы могли увидеть, как он работает в jsbin
Метод подсказки: http://jsbin.com/amefu
Метод ввода: http://jsbin.com/iyoge

57
ответ дан 27 November 2019 в 05:22
поделиться
var junk=new Array();
junk.push('This is a string.');

И так далее.

16
ответ дан 27 November 2019 в 05:22
поделиться

Вы можете вставить push данных, это будет выполняться в порядке

var arr = Array();
function arrAdd(value){
    arr.push(value);
}
6
ответ дан 27 November 2019 в 05:22
поделиться

Насколько я знаю, в Javascript есть динамические массивы. Вы можете добавлять, удалять и изменять элементы на лету.

var myArray = [1,2,3,4,5,6,7,8,9,10];
myArray.push(11);
document.writeln(myArray);  // Gives 1,2,3,4,5,6,7,8,9,10,11


var myArray = [1,2,3,4,5,6,7,8,9,10];
var popped = myArray.pop();
document.writeln(myArray);  // Gives 1,2,3,4,5,6,7,8,9

Вы даже можете добавлять такие элементы, как

var myArray = new Array()
myArray[0] = 10
myArray[1] = 20
myArray[2] = 30

, вы даже можете изменять значения

myArray[2] = 40

Порядок печати

Если хотите, в том же порядке, этого будет достаточно . Javascript печатает значения в порядке значений ключей. Если вы вставили значения в массив в виде монотонно увеличивающихся значений ключей, они будут напечатаны таким же образом, если вы не захотите изменить порядок.

Отправка страницы

Если вы используете JavaScript, вам даже не нужно чтобы отправить значения на другую страницу. Вы даже можете отображать данные на той же странице, манипулируя DOM.

var myArray = [1,2,3,4,5,6,7,8,9,10];
myArray.push(11);
document.writeln(myArray);  // Gives 1,2,3,4,5,6,7,8,9,10,11


var myArray = [1,2,3,4,5,6,7,8,9,10];
var popped = myArray.pop();
document.writeln(myArray);  // Gives 1,2,3,4,5,6,7,8,9

Вы даже можете добавить такие элементы, как

var myArray = new Array()
myArray[0] = 10
myArray[1] = 20
myArray[2] = 30

, вы даже можете изменить значения

myArray[2] = 40

Порядок печати

Если хотите, в том же порядке, этого будет достаточно. Javascript печатает значения в порядке значений ключей. Если вы вставили значения в массив в виде монотонно увеличивающихся значений ключей, они будут напечатаны таким же образом, если вы не захотите изменить порядок.

Отправка страницы

Если вы используете JavaScript, вам даже не нужно чтобы отправить значения на другую страницу. Вы даже можете отображать данные на той же странице, манипулируя DOM.

var myArray = [1,2,3,4,5,6,7,8,9,10];
myArray.push(11);
document.writeln(myArray);  // Gives 1,2,3,4,5,6,7,8,9,10,11


var myArray = [1,2,3,4,5,6,7,8,9,10];
var popped = myArray.pop();
document.writeln(myArray);  // Gives 1,2,3,4,5,6,7,8,9

Вы даже можете добавить такие элементы, как

var myArray = new Array()
myArray[0] = 10
myArray[1] = 20
myArray[2] = 30

, вы даже можете изменить значения

myArray[2] = 40

Порядок печати

Если хотите, в том же порядке, этого будет достаточно. Javascript печатает значения в порядке значений ключей. Если вы вставили значения в массив в виде монотонно увеличивающихся значений ключей, они будут напечатаны таким же образом, если вы не захотите изменить порядок.

Отправка страницы

Если вы используете JavaScript, вам даже не нужно чтобы отправить значения на другую страницу. Вы даже можете отображать данные на той же странице, манипулируя DOM.

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

Отправка страницы

Если вы используете JavaScript, вам даже не нужно отправлять значения на другую страницу. Вы даже можете отображать данные на той же странице, манипулируя DOM.

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

Отправка страницы

Если вы используете JavaScript, вам даже не нужно отправлять значения на другую страницу. Вы даже можете отображать данные на той же странице, манипулируя DOM.

9
ответ дан 27 November 2019 в 05:22
поделиться

Здесь это пример. Вы вводите число (или что-то еще) в текстовое поле и нажимаете «добавить», чтобы поместить его в массив. Затем вы нажимаете «показать», чтобы показать элементы массива как элементы.

<script type="text/javascript">

var arr = [];

function add() {
   var inp = document.getElementById('num');
   arr.push(inp.value);
   inp.value = '';
}

function show() {
   var html = '';
   for (var i=0; i<arr.length; i++) {
      html += '<div>' + arr[i] + '</div>';
   }
   var con = document.getElementById('container');
   con.innerHTML = html;
}

</script>

<input type="text" id="num" />
<input type="button" onclick="add();" value="add" />
<br />
<input type="button" onclick="show();" value="show" />
<div id="container"></div>
5
ответ дан 27 November 2019 в 05:22
поделиться

Следующий код создает объект Array с именем myCars:

var myCars=new Array();

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

1:

var myCars=new Array();
myCars[0]="Saab";
myCars[1]="Volvo";
myCars[2]="BMW";

Вы также можете передать целочисленный аргумент для управления размером массива:

var myCars=new Array(3);
myCars[0]="Saab";
myCars[1]="Volvo";
myCars[2]="BMW";

2:

var myCars=new Array("Saab","Volvo","BMW");

Примечание: Если вы укажете числа или истинные / ложные значения внутри массива, тогда тип переменных будет числовым или логическим, а не строковым.

Доступ к массиву

Вы можете ссылаться на конкретный элемент в массиве, ссылаясь на имя массива и номер индекса. Номер индекса начинается с 0.

Следующая строка кода:

document.write(myCars[0]);

приведет к следующему выводу:

Saab

Изменить значения в массиве

Чтобы изменить значение в существующем массиве, просто добавьте новое значение в массив с указанным номером индекса:

myCars[0]="Opel";

Теперь, следующая строка кода:

document.write(myCars[0]);

приведет к следующему выводу:

Opel
4
ответ дан 27 November 2019 в 05:22
поделиться
Другие вопросы по тегам:

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