📌Language/JavaScript

find(), findIndex(), Object.entries()

hellohailie 2022. 7. 7. 14:07

 

배열.find()는 반복문이지만, 원하는 것을  찾으면 (return이 true) 찾아준다. (첫번째만!!)

let cities = ['seoul', 'busan', 'incheon', 'ulsan', 'jeju'];
let city = 'jeju';
let chars = 4;
let chars3 = 7;

let match = cities.find(item => {
 if(city === item) return true;
}); 

console.log(match);
// 결과값
// 'jeju'

let match2 = cities.find(item => {
  if(item.length === chars) return true
})

console.log(match2)
// 결과값
// 'jeju'

let match3 = cities.find(item => {
  if(item.length === chars3) return true
})

console.log(match3)
// 결과값
// 'incheon'

 

 

배열.findIndex()는 원하는 것을 찾으면 인덱스를 알려준다. (첫번째만!!)

let cities = ['seoul', 'busan', 'incheon', 'ulsan', 'jeju'];
let city = 'jeju';
let chars = 4;
let chars3 = 7;

let index = cities.findIndex(item => item.toLowerCase().indexOf('c') > -1);

console.log(index)
//결과값
//2 (incheon에 있으니까!)

let index2 = cities.findIndex(item => item.toLowerCase().indexOf('j') > -1);
console.log(index2)
//결과값
//4 (jeju에 있으니까!)

 

  • indexOf()는 1차원 배열에만 쓰고, 2차원 배열에는 find()나 findIndex()를 쓴다. 

 

Object.entries() 는 객체를 2차원 배열로 만들어준다. 

const aa = {날씨: '맑음', 기온: '33', 구름: '없음'}
console.log(aa)
//{ '날씨': '맑음', '기온': '33', '구름': '없음' }

Object.entries(aa)
//[ [ '날씨', '맑음' ], [ '기온', '33' ], [ '구름', '없음' ] ]