陣列物件常用處理方案(演算法思路)

2021-09-29 05:11:49 字數 2331 閱讀 5832

(1)依據陣列物件中某個值,將相同的物件合併成乙個新物件

資料來源是這樣的

beforedata:[,

,,,,

]

要將資料中name相同的項合併成乙個物件

afterdata:[,

]},,

]},,

]}]

實現:

let temparr =

;for

(let i =

0; i <

this

.beforedata.length; i++))

; temparr.

push

(this

.beforedata[i]

.name);}

else}}

}

(2)根據陣列中物件的某乙個屬性值進行排序

如下**,根據陣列物件中的age進行排序

方式一:

var arr =[,

,];function

compare

(property)

}console.

log(arr.

sort

(compare

('age'))

)

方式二:

students:[,

,,]//陣列物件方法排序:

function

sortbykey

(array, key))}

//將相應的陣列物件傳入即可完成排序:

sortbykey

(students,age)

;

(3)陣列的值大小排序

如下**,將陣列中的值進行大小排序

let values =[1

,2,3

,6,4

,8];

//小到大排序,如果需要由大到小,把返回的-1和1反過來就可以了

letcompare

=(x,y)

=>

else

if(x > y)

else

}console.

log(values.

sort

(compare));

//[1, 2, 3, 4, 6, 8]

(4)陣列中相同元素組合成乙個新的陣列

現在有乙個這樣規律的陣列,需求是把裡面相同元素組合成乙個新的陣列;

arr=

['1'

,'1'

,'1'

,'2',,

'3',

'4',

'5',

'5',

'6',

'6',

'7',

'8',

'9',

'9',

'10'

]

結果是這樣的

newarr =[[

"1",

"1",

"1"],[

"2"],[

],["3"],

["4"],

["5"

,"5"],

["6"

,"6"],

["7"],

["8"],

["9"

,"9"],

["10"

]]

實現方式:

var arr=

['1'

,'1'

,'1'

,'2',,

'3',

'4',

'5',

'5',

'6',

'6',

'7',

'8',

'9',

'9',

'10'];

var newarr =

, temparr =

;for

(var i=

0,j=arr.length;i)else

} console.

log(newarr)

;/*[ [ "1" , "1" , "1" ] , [ "2" ] , , [ "3" ] , [ "4" ] ,[ "5" , "5" ] , [ "6" , "6" ] , [ "7" ] , [ "8" ] , [ "9" , "9" ] , [ "10" ] ]*/

陣列常用處理方法

一 遍歷陣列 二 排序 普通陣列sort,預設公升序 var arr 2,4,3,4,5 console.log arr.sort 2,3,4,4,5 如果使用函式a b是公升序,b a是倒序 arr.sort function a,b console.log arr 5,4,4,3,2 物件陣列按...

PHP常用處理陣列函式

依次拼接陣列 array1 array 1,2,3,4,5 array2 array 6,7,8,9,10 array3 array merge array1,array2 拼接 print r array3 執行結果 array 0 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 ...

php 中常用處理陣列函式

陣列的處理在php中是很重要的,在這裡我找了一些比較常用的處理陣列的函式給大家分享。1,array values arr 取得陣列的值,返回乙個新的陣列 2,array keys arr,value 取得陣列的鍵名,返回乙個新的陣列,如果新增了第二個引數,則只返回值為value的鍵值,第三個引數設定...