본문 바로가기

자바스크립트

JavaScript 표준 내장 객체 - Array(2)

 

 

 

findIndex

const numbers = [17,20,199,5,48]
const foundIndex = numbers.findIndex(item=>item<30)
console.log(foundIndex)	// 0
console.log(numbers.findIndex(item=>item>100)) // 2


const users = [
    {name:'A', age: 12, email:'123@456.789'},
    {name:'B', age: 15, email:'987@654.321'},
    {name:'C', age: 18},
]

console.log(users.findIndex(user=> !user.email))	// 2
console.log(users.findIndex(user=> user.call))		// -1

   - 배열 내 아이템에 콜백 테스트를 실행하여 처음으로 통과하는 요소의 인덱스를 반환합니다.

   - 테스트 통과 후 이후 테스트는 진행하지 않습니다.

   - 모든 테스트가 실패하면 -1을 반환합니다.

실행 결과

 

 

 

 

forEach

const numbers = [17,20,199,5,48]
numbers.forEach(number=>{
    console.log(number)
})

let sum = 0
numbers.forEach(number=>{
    sum+=number
})

console.log('합 : ',sum)

for(const number of numbers){
    if(number>100){
        break
    }
    console.log(number)
}

   - 배열 내 아이템에 각각 콜백 함수를 실행시킵니다.

   - for of 와 동일한 역할을 수행하지만, forEach는 중간에 멈출 수 없습니다. 

 

 

 

 

includes

const fruits = ['Apple','Banana','Cherry']

console.log(fruits.includes('Apple'))	//true
console.log(fruits.includes('banana'))	//false

   - 배열에 특정 요소가 포함되어있는지 확인하여 true나 false를 반환합니다.

   - 대,소문자를 구분합니다.

 

 

 

 

join

const fruits = ['Apple','Banana','Cherry']

console.log(fruits.join())
console.log(fruits.join(''))
console.log(fruits.join(' '))
console.log(fruits.join('-'))
console.log(fruits.join('=='))
console.log(fruits.join(' and '))

   - 배열 내 모든 요소를 연결하여 하나의 문자열로 반환합니다.

   - 연결부분에 집어넣을 문자열을 입력할 수 있으며, 기본값은 쉼표( , ) 입니다.

실행 화면

 

 

 

 

map

const numbers = [17,20,199,5,48]
const doubleNumbers = numbers.map(number=>number*2)
console.log(numbers)
console.log(doubleNumbers)

const fruits = ['Apple','Banana','Cherry']
const capitalized = fruits.map(fruit=>fruit.toUpperCase())
console.log(fruits)
console.log(capitalized)

const users = [
    {name:'A', age: 12, email:'123@456.789'},
    {name:'B', age: 15, email:'987@654.321'},
    {name:'C', age: 18},
]

console.log(users.map(user=> user.email))

   - 배열의 모든 요소에 대해 콜 백을 호출하고 반환된 결과로 새로운 배열을 반환합니다.

실행 화면

 

 

 

 

push

const fruits = ['Apple','Banana','Cherry']		// length = 3

console.log(fruits.push('Durian'))
console.log(fruits.length)
console.log(fruits)


const numbers = [17,20,199,5,48]			// length = 5
console.log(numbers.push(9,10,11))
console.log(numbers.length)
console.log(numbers)

   - 배열 데이터의 마지막에 하나 이상의 요소를 추가하고, 배열의 새로운 길이를 반환합니다.

   - 원본 데이터를 변경하기 때문에, 유의해서 사용해야 합니다.

실행 화면

 

 

 

 

reduce

const numbers = [17,20,199,5,48]

const sum1 = numbers.reduce((accumulator, number)=>{
    console.log(accumulator) // 0, 17, 37, 236, 241, 289
    return accumulator + number
},0)

console.log(sum1)

const users = [
    {name:'A', age: 12, email:'123@456.789'},
    {name:'B', age: 15, email:'987@654.321'},
    {name:'C', age: 18},
]

console.log(users.reduce((acc,user)=> acc+user.age,0))

   - 배열의 각 요소에 대해 콜백을 호출하고,

      각 콜백의 반환값을 다음 콜백으로 전달해 마지막 콜백의 반환값을 최종 반환합니다.

   - 첫번째 인수의 초기값을 설정하면, 콜백을 진행하면서 반환값을 첫번째 인수에 전달합니다.