перебирать элементы, добавлять их к объекту и делать console.log

Ничто не должно мешать вам просто избегать каждого не буквенно-цифрового символа:

usersString.replace(/(?=\W)/g, '\\');

Вы теряете определенную степень удобочитаемости при выполнении re.toString(), но вы выигрываете большую простоту (и безопасность) .

Согласно ECMA-262, с одной стороны, регулярные выражения «синтаксические символы» всегда не являются алфавитно-цифровыми, так что результат является безопасным, а специальные escape-последовательности (\d, \w , \n) всегда являются буквенно-цифровыми, так что не будут выдаваться ложные контрольные экраны.

0
задан Wojciech 18 January 2019 в 11:36
поделиться

1 ответ

Вы выполняете следующее в цикле

Object.assign (steps, {name: elements [i] .value});

, что это в основном делает, это добавляет ключ name со значением elements [i] .value .

Метод Object.assign () используется для копирования значений всех перечисляемых собственных свойств из одного или нескольких исходных объектов в целевой объект. Он вернет целевой объект.

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

Для массива вам нужно сделать что-то вроде этого

var steps = [];
var elements = document.getElementsByTagName("input");
for (var i = 0; i < elements.length; i++) {
  if (elements[i].type === "radio") {
    steps.push({ name: elements[i].value });
  }
}

console.log(steps);
0
ответ дан Avi 18 January 2019 в 11:36
поделиться
Другие вопросы по тегам:

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