Javascript JS将数组值合并为一个值

Javascript JS将数组值合并为一个值,javascript,arrays,object,Javascript,Arrays,Object,我有这个东西 a = {key:'animals', options: ['dog','cat','penguin']} 我如何将其简化为: b = ['animals','dogcatpenguin'] 您只需使用计算值创建一个新数组 var a={key:'animals', 选项:['狗','猫','企鹅']; 变量b=[ a、 钥匙, a、 选项。加入(“”) ]; document.write(JSON.stringify(b))试试这个 var a={ 关键词:“动

我有这个东西

a = {key:'animals',
     options: ['dog','cat','penguin']}
我如何将其简化为:

b = ['animals','dogcatpenguin']

您只需使用计算值创建一个新数组

var a={key:'animals',
选项:['狗','猫','企鹅'];
变量b=[
a、 钥匙,
a、 选项。加入(“”)
];
document.write(JSON.stringify(b))试试这个

var a={
关键词:“动物”,
选项:[“狗”、“猫”、“企鹅”]
}
var result=Object.keys(a).map(函数(键){
var项目=一个[键];
返回数组的项目实例?item.join(“”):项目;
});
控制台日志(结果)像这样
var a={
关键词:“动物”,
选项:[“狗”、“猫”、“企鹅”]
};
var键,b=[];
用于(输入a){
b、 push(Array.isArray(a[key])?a[key].join(“”):a[key]);
}

控制台日志(b)另一种可能的解决方案

a = {key:'animals',options: ['dog','cat','penguin']}

var b = new Array();
for(var index in a) { 
    var attr = a[index].toString().split(",").join("");
    b.push(attr);
}

您的键是否一致?迭代属性并将其值推送到新数组。但请注意,浏览器可能会以不同的顺序迭代属性。如果您始终拥有这些属性,则可以直接访问它们。到目前为止你试过什么?你被困在哪里了?你可以试试
var b=[];b、 按键;b、 推送(a.options.join(“”))
var b=新数组(a.key,a.options.join(“”)-重要的是要注意@FelixKling所说的,如果你打算迭代,那么对象键的顺序永远无法保证。我将此解决方案用于角度项目,第一个答案非常有效。谢谢大家:)虽然这段代码可能会回答这个问题,但提供关于它如何和/或为什么解决问题的附加上下文将提高答案的长期价值。
a = {key:'animals',options: ['dog','cat','penguin']}

var b = new Array();
for(var index in a) { 
    var attr = a[index].toString().split(",").join("");
    b.push(attr);
}
b = [a.key,Object.values(a)[1].reduce((a,b)=> a+b)]