Есть ли прекрасный способ построения строки чего-то типа (?,?,?) Для количества элементов в массиве
я пробовал
values.map(() => '?,')
values.reduce((a,b) => {a + '?,'},'')
но оба они не работают
Вы можете сопоставлять вопросительные знаки для каждого элемента и присоединяться к массиву в литературе шаблона.
var array = [1, 2, 3],
string = '(${array.map(_ => '?').join()})';
console.log(string);
"(" + values.map(el => "?").join() + ")"
Вы могли бы просто join
ним.
Вам нужно вернуться с карты и уменьшить функции.
var valuse = [1,2,3]
var newValues = values.reduce((a,b) => a === '' ? '?' : a + ',?','');
console.log(newValues);
Вы можете просто использовать расширение массивов forEach(), например:
var string = "";
[1,2,3,4,5,6,7,8,9].forEach((elem, index) => string += "?");