2015-07-08 2 views
-6

Мне нужна одна команда, которая объединит 3 строки вместе, разделив их на дефисы, только если у них есть контент. Например.Логически конкатенация строк, разделенных дефисом

var stringOne = ["", "second", "last"]; 
var stringTwo = ["", second", ""]; 
var stringThree = ["", "", ""]; 

Результаты этой команды должны быть:

"второй - последний"

"второй"

""

+2

[фильтр] (https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Array/filter) массив, а затем «join» результирующий массив. – CBroe

+0

@CBroe сделать это ответ :-) – robertklep

+0

Я пытаюсь использовать тройники, но не могу понять, как предшествовать следующему слову с помощью «-» –

ответ

1

Попробуйте

stringOne 
.filter(function(el) { 
    return el !== ""; 
}) 
.join(" - "); 

filter избавляется от всех пустых элементов, join должен быть простым.

+0

Работал именно так, как я надеялся. Благодаря! –

Смежные вопросы