[JS] 배열함수

지냐킴·2022년 8월 4일
0

JavaScript

목록 보기
1/5
post-thumbnail

forEach()

주어진 함수를 배열 요소 각각에 대해 실행한다
반환값이 없다, 단순 for문과 같이 작동한다.(변수 필요 없음)

let ceolist = [
  "Steven Paul Jobs",
  "Bill Gates",
  "Mark Elliot Zuckerberg",
  "Elon Musk",
  "Jeff Bezos",
  "Warren Edward Buffett",
  "Larry Page",
  "Larry Ellison",
  "Tim Cook",
  "Lloyd Blankfein",
];

for (let i=0; i<names.length; i++){
  console.log(names[i])}

function printName(item){
console.log(item)}
// item 누가 주는데?> forEach는 지가 알아서줘 

ceolist.forEach(printName)
// forEach가 알아서 회전을 하면서 매번 아이템 하나씩 넘겨줌

// =>  function "PrintName"다른 곳에 안쓰이니까 구지 이름을 부여할 필요 없으니 forEach 안에 넣어도됨  
// => names.forEach(function (itme){
//    console.log(itme}) 
// => 위에건 구 문법임 요즘엔 화살표 함수로 씀 ES6 문법
// => names.forEach((item)=>{console.log(item)})
// item 요소도 불러오고 index 순서도 불러올수 있음 
// => names.forEach((item,inex)=>{console.log(item)})

=> 모든 배열함수가 함수를 매개변수로 받음 'names.forEach(function~)'
-> 이 함수에 아이템을 매번 넣어줌 ->아이템을 가져와서 하고싶은거 하면됨

map()
반환값을 배열에 담아 반환한다.
=>내가 원하는 데이터만 가져오고 싶을때 map()을 많이 쓴다

let data = ceolist.map((item)=>{
  // 반환값있어서 변수 let data 지정해줌 
 return item.age
  // item이 배열[]로 반환됨.
  // 배열에 무슨 값을 넣어 줄지는 return이 결정함
  // ex) return item+"hahah" => 이름+haha 붙여져서 리턴됨
  
})
console.log(date)
// ceolist 에서 나이 데이터만 반환함 

filter()
조건에 충족하는(true) 아이템만 배열에 담아 반환한다
=> 조건을 넣고 조건에 대해 참인 값을 다 반환됨

let date = ceolist.filter((itenm)=>{
	return item.age==23
  // true,false로 떨어지는 조건을 넣어야함
  // item 중에 나이가 23이 참이면 값을 반환 
    })
console.log(date)
// 나이가 23인 데이터 반환

some()
조건에 충족하는 아이템이 하나라도 있으면 true 반환, 아니면 false.
filter는 참인 데이터를 다 보여준다, some은 조건이 만족하면 'true' 아니면 'false' 단어 반환

let date = ceolist.some((itenm)=>{
	return item.startWith("L")
  // 아이템에"L"로 시작하는게 아이템 있니
    })
console.log(date)
// 있으면 'true' 반환 

every()
모든 배열에 아이템이 조건을 충족하면 true 반환, 아니면 false.

let date = ceolist.every((itenm)=>{
	return item.startWith("A")
  // 1. 모든 이름이 A로 시작해?   
  // 2. 모든 이름이 L로 시작해?
    })
console.log(date)
// 1. false 반환 
// 2. false 반환 (몇개는 L이지만 모두가 아니니까)

find()
조건에 충족하는 아이템 하나만 반환(여러개라면 첫번째것만 반환)
정확한 값 딱 하나만 찾기 좋음

let date = ceolist.find((itenm)=>{
	return item.startWith("L")
  // 1. L로 시작하는 item 찾아줘
 
    })
console.log(date)
// 1. Larry Page
// 

filter는 결과를 배열에 담아준다 + 조건에 속하는 아이템을 다 반환
find는 스트링타입으로 반환 + 여러개 중 찾은 첫번째 것만 반환

findIndex()
조건에 충족하는 아이템의 인덱스값 반환 (여러개라면 첫번째아이템의 인덱스번호만 반환)

let date = ceolist.findIndex((itenm)=>{
	return item=="Larry Page"
  //  
    })
console.log(date)
// 6 => Larrt Page가 순서 값 반환 6번째 있다
profile
코린이일기

0개의 댓글

관련 채용 정보