push ( ) : 뒤에 삽입
pop ( ) : 뒤에 삭제
unshift ( ) : 앞에 삽입
shift ( ) : 앞에 삭제
let arr = [1, 2, 3, 4, 5];
arr.splice(1, 2);
console.log(arr); // [1, 4, 5]
let arr = [1, 2, 3, 4, 5];
arr.splice(1, 3, 100, 200);
console.log(arr); // [1, 100, 200, 5]
--------------------------------------------------------------
❓ 지우지 않는다면?
let arr = ["나는", "철수", "입니다"];
arr.splice(1, 0, "대한민국", "소방관");
console.log(arr); // ["나는", "대한민국", "소방관", "철수", "입니다"]
let arr = [1, 2, 3, 4, 5];
let result = arr.splice(1, 2);
console.log(arr); // [1, 4, 5]
console.log(result); // [2,3]
let arr = [1, 2, 3, 4, 5];
arr.slice(1, 4); // [2, 3, 4]
let arr2 = arr.slice();
console.log(arr2); // [1, 2, 3, 4, 5]
let arr = [1, 2];
arr.concat([3, 4]); // [1, 2, 3, 4]
arr.concat([3, 4], [5, 6]); // [1, 2, 3, 4, 5, 6]
📌 배열이 아닌 값도 전달됨
arr.concat([3, 4], 5, 6); // [1, 2, 3, 4, 5, 6]
let users = ['Mike', 'Tom', 'Jane'];
users.forEach((item, index, arr) => {
// ...
});
---------------------------------------
let users = ['Mike', 'Tom', 'Jane'];
users.forEach((name, index) => {
console.log(name);
// Mike Tom Jane
console.log(`${index} ${name}`);
// 0 Mike 1 Tom 2 Jane
console.log(`${index}. ${name}`);
// 0. Mike 1. Tom 2.Jane
console.log(`${index + 1}. ${name}`);
// 1. Mike 2. Tom 3.Jane
});
let arr = [1, 2, 3, 4, 5, 1, 2, 3];
arr.index(3); // 2
arr.index(3, 3); // 7
// → 인수가 두개인 경우 두번째 인수는 시작 위치를 의미
arr.lastIndexOf(3); // 7
// → 끝에서 부터 탐색, 끝에서 첫번째 만나는 3 위치
let arr = [1, 2, 3];
arr.includes(2); // true
arr.includes(8); // false
let arr = [1, 2, 3, 4, 5];
const result = arr.find((item) => {
return item % 2 === 0;
});
console.log(result); // 2
-----------------------------------------------
📍 find
let userList = [
{ name: 'Mike', age: '30'},
{ name: 'Tom', age: '27'},
{ name: 'Jane', age: '13'},
];
const result = userList.find((user) => {
if (user.age < 19) {
return true;
}
return false;
});
console.log(result); // {name: "Jane", age: 13}
📍 findIndex
let userList = [
{ name: 'Mike', age: '30'},
{ name: 'Tom', age: '27'},
{ name: 'Jane', age: '13'},
];
const result = userList.findIndex((user) => {
if (user.age < 19) {
return true;
}
return false;
});
console.log(result); // 2 → 조건에 맞는 index 찾기
let arr = [1, 2, 3, 4, 5, 6];
const result = arr.filter((item) => {
return item % 2 === 0;
});
console.log(result); // [2, 4, 6]
let arr = [1, 2, 3, 4, 5];
arr.reverse(); // [5, 4, 3, 2, 1]
let userList = [
{ name: 'Mike', age: '30'},
{ name: 'Jane', age: '27'},
{ name: 'Top', age: '10'},
];
let newUserList = userList.map((user, index) => {
return Object.assign({}, user, {
isAdult: user.age > 19,
});
});
console.log(newUserList);
// (3) [{…}, {…}, {…}]
// 0: {name: 'Mike', age: '30', isAdult: true}
// 1: {name: 'Jane', age: '27', isAdult: true}
// 2: {name: 'Top', age: '10', isAdult: false}
// length: 3
// [[Prototype]]: Array(0)
// ❗️arr.join() 괄호 안에 내용을 넣지 않으면 쉼표로 구분
let arr = ["안녕", "나는", "철수야"];
let result = arr.join();
console.log(result); // 안녕, 나는, 철수야
----------------------------------------------
let arr = ["안녕", "나는", "철수야"];
let result = arr.join(" "); // 공백
let result2 = arr.join("-"); // 하이픈
console.log(result); // 안녕 나는 철수야
console.log(result2); // 안녕-나는-철수야
// 📍 쉼표를 기준으로 배열을 만들어줌
const users = "Mike,Jane,Tom,Tony";
const result = users.split(",");
console.log(result); // ["Mike", "Jane", "Tom", "Tony"]
--------------------------------------------------------
// 📍 빈 문자열을 기준으로 배열을 만들어줌
let str = "Hello, My name is Mike.";
const result = str.split("");
console.log(result);
// ["H", "e", "l", "l", "o", ",", " ", "M", "y" ...]
// object
let user = {
name: "Mike",
age : 30,
};
// array
let userList = ["Mike", "Tom", "Jane"];
console.log(typeof user); // object (객체)
console.log(typeof userList); // object (객체)
console.log(Array.isArray(user)); // false
console.log(Array.isArray(userList)); // true