老师,想问一个关于对象key顺序的问题

来源:2-6 ES5中数组有多少种遍历的方法?

目訫

2020-03-25

现在有这个么一个Json

let json = {
	before: '2019',
	data: [
		{
			name: 'name',
			value1: '0.345',
			value2: '0.411'
		}
	],
	after: '2020'
}

现在想解析这个Json,得到一个这样的数组

[
	{
		name: 'name',
		2019: '0.345',
		2020: '0.411'
	}
]

也就是name不变,原来的before字段对应新的对象的第二个key,after字段对应第二个key,我是这么做的

let beforeKey = json.before
let afterKey = json.after

let arr1 = []
let obj = {}
json.data.forEach(item => {
  obj['name'] = item.name
  obj[beforeKey] = item.value1
  obj[afterKey] = item.value2
  arr1.push(obj)
})
console.log(arr1)

我得到了一个这样的对象

[
	{
		2019: "0.345",
		2020: "0.411",
		name: "name"
	}
]

其实我想要的字段也已经得到了,但是顺序不对,无论我怎么调整赋值顺序,顺序都是这样,因此想请问老师有什么办法可以调整这个对象key的顺序吗?

写回答

1回答

慕粉1926294646

2020-03-25

同学你好,想保证顺序的话可以考虑用数组

0
1
目訫
非常感谢!
2020-04-08
共1条回复

再学JavaScript ES(6-10)全版本语法大全

前端无门槛学习,从ES6到ES10,一套课程掌握JS最新语法

1182 学习 · 336 问题

查看课程