使用Javascript合并数组中的对象

使用Javascript合并数组中的对象,javascript,merge,javascript-objects,Javascript,Merge,Javascript Objects,第一篇帖子,编程新手,学习很兴奋 问题是: 如何将所有对象(字符串)合并到单个数组中 例: 我的研究: 我已经尝试了.join(“”),但它给出了: Not desired result = How,,do,,I,,merge,,these? 谢谢你帮助一个新手 你可以通过 var myStrings = ["How", "", "do", "", "I", "", "merge", "", "these?"]; var result = [myStrings.join(" ").replac

第一篇帖子,编程新手,学习很兴奋

问题是: 如何将所有对象(字符串)合并到单个数组中

例:

我的研究: 我已经尝试了
.join(“”)
,但它给出了:

Not desired result = How,,do,,I,,merge,,these?
谢谢你帮助一个新手

你可以通过

var myStrings = ["How", "", "do", "", "I", "", "merge", "", "these?"];
var result = [myStrings.join(" ").replace(/\s\s/g, " ")];
console.log(result); // ["How do I merge these?"]
尝试通过一个空格
连接
数组,如上所述。并将双空格替换为单空格。由于数组中有空字符串,因此必须执行此操作。

您可以使用筛选truthy值(如非空字符串)

以及使用
'
的连接。然后将其作为新数组的元素

var myStrings=[“如何”、“做”、“我”、“合并”、“这些?”],
result=[myStrings.filter(函数(a){returna;}).join('');
控制台日志(结果)
您可以使用
.forEach()
迭代数组,如果项不是空字符串,则将项连接到新字符串,否则将空格字符
连接到新字符串

var res = [""];
myStrings.forEach(function(str) {res[0] += str !== "" ? str : " ";});

在数组中合并对象
FYI,它们被称为
字符串
而不是
对象
。下面没有答案可以解释
myStrings.reduce(函数(a,x){return(a+“”+x).trim();},“”
可能值得解释的是
强制执行
false
value    Boolean
'abc' -> true
''    -> false
var myStrings = ["How", "", "do", "", "I", "", "merge", "", "these?"]

myStrings.join('').split(',,').join(' ');
var res = [""];
myStrings.forEach(function(str) {res[0] += str !== "" ? str : " ";});