JS 交換對象中屬性的順序,交換數組對象中對象的順序

1.交換對象中屬性順序
let obj = {
   
   
	name: 'joker',
	height: 183,
	weight: '70kg',
	sex: 'man',
	...
}

現在將性別屬性移至對象中第二位

let keyArr = Object.keys(obj)
keyArr.splice(keyArr.indexOf('sex'), 1)
keyArr.splice(1,0,'sex')
let newObj = {
   
   }
for (let idx = 0; idx < keyArr.length; idx++) {
   
   
    newObj[keyArr[idx]] = obj[keyArr[idx]]
}
console.log(newObj) // {name: "joker", sex: "man", height: 183, weight: "70kg"}
2. 交換數組對象中對象的順序
let arr = [
	{
   
   name: 'joker', age: 18},
	{
   
   name: 'lisa', age: 20},
	{
   
   name: 'lucky', age: 12},
	{
   
   name: 'jak', age: 24},
	{
   
   name: 'rose', age: 22}
]

現將jak所屬的對象移至數組的第二位

let arrName = []
arr.forEach(el => {
   
   
    arrName.push(el.name)
})
if (arrName.indexOf('jak') > -1) {
   
   
    let filterArr = arr.splice(arrName.indexOf('jak'), 1)
    arr.splice(1,0,filterArr [0])
}
console.log(arr)
//[{name: "joker", age: 18},
// {name: "jak", age: 24},
// {name: "lisa", age: 20},
// {name: "lucky", age: 12},
// {name: "rose", age: 22}]
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章