Как добавить строку (') в значение массива на JavaScript - PullRequest
0 голосов
/ 27 мая 2019

У меня есть строковое значение типа ввода = скрыто так:

A,B,C

Затем я преобразую эту строку в массив с помощью .split () в javascript:

var menu = $('#title_list').val(); var arrayMenu = menu.split(",");

и результаты:

arrayMenu = ["A","B","C"]

Если я хочу, чтобы значение этого массива было таким:

arrayMenu = ["'A'","'B'","'C'"] 

как это сделать?

Ответы [ 5 ]

1 голос
/ 27 мая 2019

Вы можете просто отобразить значения массива.Предполагая, что у вас есть следующее:

let arrayMenu = ['A', 'B', 'C']
arrayMenu = arrayMenu.map((item) => `'${item}'`);
console.log(arrayMenu);
0 голосов
/ 27 мая 2019

Хотя строковое значение типа ввода = скрыто равно A,B,C Лично Я постараюсь сформировать строку, затем создать массив вместо массива, затем снова выполнить цикл foreach

var menu = $('#title_list').val();
var arrayMenu = ("'"+ menu +"'").replace(/,/g , "','").split(",");
console.log(arrayMenu);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input id="title_list" value="A,B,C" />

Объяснение для ("'"+InputValue +"'").replace(/,/g , "','").split(",");:

  • ("'"+menu+"'") Добавьте одинарную кавычку вне значения, равного 'A,B,C'

  • .replace(/,/g , "','") заменить запятую на ',' на 'A' , 'B' , 'C'

  • .split(","), чтобы разделить запятую, чтобы сделать массив

0 голосов
/ 27 мая 2019
arrayMenu.forEach((v, i) => arrayMenu[i] = "'"+v+"'");
0 голосов
/ 27 мая 2019

const arrayMenu = ["A","B","C"];

const newArray = arrayMenu.map(arr => `'${arr}'`);

console.log(arrayMenu, newArray);


// Another Solution
arrayMenu.forEach((currentValue, index) => arrayMenu[index] = `'${currentValue}'`);

console.log(arrayMenu);
0 голосов
/ 27 мая 2019

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

for(var i = 0; i < arrayMenu.length; i++) {
   arrayMenu[i] = "'" + arrayMenu[i] + "'";
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...