영상
개념
<script>
// 1-1. 배열.indexOf(value) : value가 있으면 value의 인덱스 반환, 없으면 -1 반환
console.log(">>> 1번");
let arr = [1, 2, 3, 4, 5, 1, 2, 3];
console.log(arr.indexOf(3)); // 2
console.log(arr.indexOf(100)); // -1
// 1-2. 배열.indexOf(value, index) : index위치부터 value탐색 후, 인덱스 반환
console.log(arr.indexOf(3, 3)); // 7
// 1-3. 배열.lastIndexOf(value) : 끝에서부터 value의 인덱스 반환
console.log(arr.lastIndexOf(3)); // 7
// 2. 배열.includes(value) : value가 있으면 true, 없으면 false 반환
console.log(">>> 2번");
let arr2 = [1, 2, 3];
console.log(arr2.includes(2)); // true
console.log(arr2.includes(8)); // false
// 3-1. 배열.find(fn)
// indexOf처럼 찾는다는 의미는 동일하지만 보다 복잡한 연산이 가능하도록 함수 연결 가능
// 첫 번째 true값만 반환하고 끝남
console.log(">>> 3-1번")
let arr3 = [1, 2, 3, 4, 5];
let result = arr3.find((value) => {
// 리턴 값이 true일 때 멈추고 해당 요소를 알려줌
return value % 2 === 0;
});
console.log(result); // 2
let userList = [
{name: "Mike", age: 30},
{name: "Jane", age: 27},
{name: "Tom", age: 10},
{name: "anna", age: 5}
];
// 3-2. 배열.find는 없으면 undefined를 반환
console.log(">>> 3-2번");
let result2 = userList.find((user) => {
return user.age < 3;
});
console.log(result2); // { name: "Tom", age: 10 }
// 3-3. 배열.findIndex(fn) 조건이 true이면 해당 인덱스를 반환. 없으면 -1을 반환
console.log(">>> 3-3번");
let result3 = userList.findIndex((user) => {
return user.age < 19;
});
console.log(result3); // 2
// 4. 배열.filter(fn) : 만족하는 모든 요소를 배열로 반환
// find와 달리 조건을 만족하는 모든 요소를 알고 싶을 때 사용
console.log(">>> 4번");
let arr4 = [1, 2, 3, 4, 5 , 6 , 7];
let result4 = arr4.filter((item) => {
return item % 2 === 0;
});
console.log(result4); // [2, 4, 6]
// 5. Array.isArray() : 배열인지 아닌지 확인
console.log(">>> 5번");
let user = {
name: "Mike",
age: 30,
}
let userList3 = ["Mike", "Jane", "Tom"];
console.log(typeof user); // object
console.log(typeof userList3); // object // 타입은 object 지만 배열이다.
console.log(Array.isArray(user)); // false
console.log(Array.isArray(userList3)); // true
</script>
Java
복사