Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/99.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在ES6中追加对象?_Javascript_Reactjs_React Native_Asyncstorage - Fatal编程技术网

Javascript 在ES6中追加对象?

Javascript 在ES6中追加对象?,javascript,reactjs,react-native,asyncstorage,Javascript,Reactjs,React Native,Asyncstorage,在我的react原生应用程序中,我在本地存储并检索了一个对象,工作正常,但现在我想在前一个对象上附加另一个对象,就像我有两个对象一样: const obj1 = {key1: keyone, key2: keytwo} const obj2 = {key4: keyfour, key6: keysix} 我想要的只是一个物体 { key1: keyone, key2: keytwo }, { key4: keyfour, key6: keysix } 我试着这样做:

在我的react原生应用程序中,我在本地存储并检索了一个对象,工作正常,但现在我想在前一个对象上附加另一个对象,就像我有两个对象一样:

    const obj1 = {key1: keyone, key2: keytwo}
    const obj2 = {key4: keyfour, key6: keysix}
我想要的只是一个物体

    { key1: keyone, key2: keytwo }, { key4: keyfour, key6: keysix }
我试着这样做:

    const newVal = `${obj1}, ${obj2}`
返回“object object”

我浏览了Object.assign()和lodash的.merge()功能,但似乎它们正在合并对象中的公共字段


如何实现这一点?

您有一个对象
A={“A”:1,“b”:2}
和一个对象
b={“c”:3,“d”:4}
。您需要一个对象
C
,该对象包含两个单独的对象(因此您的问题中的语法):


var C={A,B}//{“a”:1,“b”:2},{“c”:3,“d”:4}

1。如果您想拥有一个对象数组,那么可以使用以下方法:

const arr = [obj1, obj2];
它将为您提供以下结果:

[{ key1: keyone, key2: keytwo }, { key4: keyfour, key6: keysix }] 
2。如果您想要对象的对象,那么您可以尝试以下方法:

const arr = {obj1, obj2};
const arr = {...obj1, ...obj2};
这将导致以下结果:

{ obj1: { key1: keyone, key2: keytwo }, obj2: { key4: keyfour, key6: keysix }} 
 { key1: keyone, key2: keytwo, key4: keyfour, key6: keysix }
3。如果想要单个对象,可以尝试以下操作:

const arr = {obj1, obj2};
const arr = {...obj1, ...obj2};
将产生以下结果:

{ obj1: { key1: keyone, key2: keytwo }, obj2: { key4: keyfour, key6: keysix }} 
 { key1: keyone, key2: keytwo, key4: keyfour, key6: keysix }

您可以使用排列运算符(

constobj1={key1:1,key2:2};
常量obj2={key4:4,key6:6};
常量newVal={…obj1,…obj2};

console.log(newVal)您想要的输出是一个对象本身,它包含两个没有键的对象,我的建议是输出一个对象数组,这在某种程度上会导致您的输出

[obj1, obj2] = [{ key1: keyone, key2: keytwo }, { key4: keyfour, key6: keysix }]

对象需要有键,但您的愿望输出不是。也许你想要一个对象数组?
{key1:keyone,key2:keytwo},{key4:keyfour,key6:keyIX}
这不是一个对象。
const arr=[];arr.push(obj1);arr.push(obj2)
您的
newVal
示例使用“模板字符串”生成字符串变量。所以,如果您想生成一些复合对象,那么这是行不通的。@ManojYadav使用数组并按ShaileshI的建议在其上推送对象。我相信您的第二个示例是错误的。结果将是:{obj1:{key1:keyone,key2:keytwo},obj2:{key4:keyfour,key6:keyIX}}非常罕见和令人敬畏的解释,谢谢你得到了非常清晰的答案他不想合并,但他想要的是这样的
{key1:keyone,key2:keytwo},{key4:keyfour,key6:keyIX}