[선형] 2. 배열
js array, 고차함수 참고하기
1. 배열 (Array)
- 여러 개체(Entity)값을 순차적으로 나열한 선형 자료 구조
- 배열 내 값을 요소(element)라고 하며, 배열 요소는 index로 접근
- 대표 속성(property)과 메서드(method)
- 배열 크기 및 배열 여부 확인 :
Array.length
,Array.isArray()
- 배열 추가/삭제 :
Array.push()
,Array.pop()
,Array.shift()
,Array.unshift()
,Array.splice()
,Array.slice()
- 배열 탐색 :
Array.indexOf()
,Array.lastIndexOf()
,Array.includes()
- 배열 변형(callback 미사용) :
Array.sort()
,Array.reverse()
,Array.join()
- 배열 반복 : Array.sort(), Array.forEach(), Array.map(), Array.
find
(), Array.filter(), Array.reduce() - 배열 논리연산 : Array.some(), Array.every()
some
- 배열 내 단 하나라도 콜백 함수의 조건을 만족하는 요소가 있다면 true, 아니면 false 반환 (빈 배열인 경우 fasle)
Array.some(function(item, index, array){})
- item : 배열 요소 (value)
- index : 배열 위치
- array : 배열
- Array.
find
()가 해당 객체 반환이라면 Array.some()은 true/false 반환
every
- 배열 내 모든 요소가 콜백 함수의 조건을 만족한다면 true, 아니면 false 반환 (빈 배열인 경우 true)
Array.every(function(item, index, array){})
- item : 배열 요소 (value)
- index : 배열 위치
- array : 배열
let users = [
{ name: "a", age: 17, job: false },
{ name: "b", age: 20, job: false },
{ name: "c", age: 27, job: true },
];
let some_job = users.some(function(user){
return user.job === false
})
console.log(some_job) //true
let every_job = users.every(function(user){
return user.job === false
})
console.log(every_job) //false
let some_age = users.some(function(user){
return user.age > 16
})
console.log(some_age) //true
let every_age = users.every(function(user){
return user.age > 16
})
console.log(every_age) //true
let some_empty = [].some((item) => item>16)
console.log(some_empty) //false
let every_empty = [].every((item) => item>16)
console.log(every_empty) //true