首页 > 解决方案 > 组合 2 个对象并保持秩序

问题描述

我有一组从路由器捕获的参数,并希望向其添加 1x 额外参数。
能够很好地添加它,但正在寻找一种维持秩序的方法。
我希望这个新参数是第一个,然后是其余的。

例子。

来自路由器的现有参数。

apple=1&orange=2&banana=3

我想在此附加 1 个参数并将其作为第一个参数,如下所示。

myNewParam=value&apple=1&orange=2&banana=3

以下工作将其结合起来。

2个查询。有没有办法让我的新参数成为第一个?
因为我试图切换它们并且结果相同,我的新参数最终成为最后一个。
如果有更优雅的方式来做到这一点,也请提出建议。在这里使用 2x Object dot 方法
感觉有点矫枉过正。或者可能不是。做建议。谢谢。

工作副本,但我的参数myNewParam始终是最后一个。我希望它是第一个。

Object.assign(Object.fromEntries(new URLSearchParams(router.location.search)), {'myNewParam':'value'});
// same result
Object.assign({'myNewParam':'value'}, Object.fromEntries(new URLSearchParams(router.location.search)))

标签: javascriptreactjs

解决方案


您可以将扩展运算符用于对象,可从 ECMAScript 2018 获得。

const originParams= {apple: 1, orange: 2, banana :3};

const addedParams = {myNemParam : "value", ...originParams};
console.log(addedParams);

在此处查看文档


推荐阅读