2016-11-07 2 views
1

Мне нужно создать перечисление из массива javascript. (мне это нужно, чтобы заполнить запрос)Javascript array to enum

var myArray = [113214, 432423, 65465, 65654]; //something like this 
var enum = ('113214', '432423', '65465', '65654'); //into something like this 

затем использовать переменную перечислимую в качестве параметра для заполнения мой запрос так:

SELECT * ... WHERE id IN (enum); 

В этот момент мой запрос выглядит как

SELECT * ... WHERE id IN ([0934ED47E088, 0CEAC518, 3F01267E1368]); 

Мне нужна одиночная кавычка для каждой строки и без скобок.

Любые идеи, как это сделать?

+1

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

+1

Что вы подразумеваете под «enum» в этом контексте? Обычно «перечисление» имеет символические имена, которые сопоставляются значениям (иногда неявные значения, начинающиеся обычно с 0, в других случаях явно заданные), но ваш пример псевдокода, похоже, не делает этого ... –

+0

Что такое перечисления в javascript ? –

ответ

1

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

var myArray = [113214, 432423, 65465, 65654, 'abc'], 
 
    stringified = myArray.map(function (a) { 
 
     return '\'' + a + '\''; 
 
    }).join(', '), 
 
    query = 'SELECT * ... WHERE id IN (' + stringified + ');' 
 

 
console.log(query);