【发布时间】:2018-04-14 22:37:14
【问题描述】:
我正在处理一个对象对象。我需要将它作为一个对象保留,因为我正在使用一个 API,它要求我保持这种状态(这部分没有争议)。
这是我的对象的示例架构:
const obj = {
1: { name: 'Initial Step 1', stepNumber: 1 },
2: { name: 'Initial Step 2', stepNumber: 2 },
3: { name: 'Initial Step 3', stepNumber: 3 },
}
我需要实现一个moveUp 函数,它将stepNumber 和obj 分别作为第一个和第二个参数。
这个moveUp 函数基本上需要将一个内部对象与它上面的对象交换。例如。 moveUp(2, obj) 应将obj 更改如下:
{
1: { name: 'Initial Step 2', stepNumber: 1 },
2: { name: 'Initial Step 1', stepNumber: 2 },
3: { name: 'Initial Step 3', stepNumber: 3 },
}
感谢我构建的界面,stepNumber 永远不会等于 1。
我应该如何实现我的moveUp函数?
我基本上需要这个:
export const moveUp = (stepNumber, obj) => {
// I need help here
};
谢谢!
【问题讨论】:
-
Barry 如果你依赖这里的顺序,你会遇到问题。对象键不保持一致的顺序Here 对此进行了一些讨论。
-
是否应该将“Initial Step 2”的步数设置为 2?
-
@Callam 这个 sn-p 应该做什么/显示什么? O.o 相关函数为空...
-
@espresso_coffee 我指出的输入和输出正是我想要的。
-
@Beau 我不依赖订单,我正在创建它。
标签: javascript object ecmascript-6 key