티스토리 뷰

 

아래의 코드는 제가 간단하게 만든거라 let, const 등이 없으니

혹시 필요하면 변수명이나 이런건 수정해서 사용하면 됩니다.

 

해당 코드는 

객체안에 배열이 있고, 그 배열안에 또 배열이 있는 경우인데

inner의 n번째 배열의 값과 다른 객체의 배열과 값을 비교하려고 만든 코드이다.

 

array_other과 array_inner_2의 array_name이 일치하는 경우 

일치하는 객체를 matchArray에 담고, 있는 경우 실행되게끔 만들어두었고

index를 알아야 array_other 값을 변경하기 때문에 indexOf로 index를 찾아서

필요한 조건을 걸도록 해두었다.

 

 array_outer : {
 array_inner_1 : Array(20)
 array_inner_2 : Array(10)
 array_inner_3 : Array(8)
 }
 
 array_other : Array(10)
 
 array_outer.array_inner_2.forEach(obj_a => {
 	let matchArray = array_other.find(obj_b => obj_a.array_name === obj_b.array_name);
 	if (matchArray) {
 		let index = array_other.indexOf(matchArray);
 		if (matchArray.content !== 'find_content') {
			 array_other[index].value = obj_a.value;
 		} else {
 			array_other[index].value = 'chage_content'
 		}
 	}
 }