所以我要使用不同的对象,从不同的来源获取数据。我需要将它们转换为单个对象,以便我可以重复它们。
object1 = {
"key1":"value one",
"key2":"value two"
}
object2 = {
"key1":"value three",
"key2":"value four"
}
我需要的是
object3 = [{
"key1":"value one",
"key2":"value two"},
{
"key1":"value one",
"key2":"value two"}
}];
我尝试过angular.merge,但只有在密钥不同时才有效。在我的情况下,键将是相同的,只有数据会改变。
任何人都可以帮助将object1
附加到object2
,以创建object3
object1+object2
之类的内容。
我尝试将它们转换为json string&连接它们但它没有用。 阵列接触功能也不起作用。
答案 0 :(得分:3)
这只是vanilla javascript。你想从对象中创建一个数组。
var object1 = {
"key1": "value one",
"key2": "value two"
}
var object2 = {
"key1": "value three",
"key2": "value four"
}
var object3 = []; // empty array
// add the other objects to the array
object3.push(object1);
object3.push(object2);
如果你的对象已经是数组而你只想连接它们,你可以在数组上使用 concat 函数。
var object1 = [{
key: 'abc',
value: 1
}];
var object2 = [{
key: 'cbd',
value: 2
}];
// use the concat function to concatenate the arrays
var object3 = object1.concat(object2);
您可以通过阅读here找到的文档找到有关数组的更多信息。
如果您的对象是firebaseArray对象,则它们拥有自己的API。可以找到更多here。