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];
--> m자리에 0을 넣으면 추가하고 싶은 위치에 추가할 수 있음. 또 splice 함수를 반환한 값을 변수에 넣어보면 삭제되고 남은 배열이 아닌 삭제된 것들이 반환되게 된다.
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 users = ['Mike' , 'Tom' , 'Jane'];
users.forEach((item , index , arr) => {
// ..
});
forEach 함수는 3개의 매개변수를 가지는데 ,
첫째는 해당 요소 ('Mike','Tom'....)이고 ,
둘째는 index( 0 , 1 , 2... ) 이고 ,
셋째는 해당 배열 자체를 의미함 , 보통 첫번째와 두번째만 사용
let arr [1,2,3,4,5,1,2,3];
arr.indexOf(3) // 2
// 인덱스 3부터 시작해서 3을 찾아라
arr.indexOf(3,3) // 7
arr.lastIndexOf(3); // 7
let arr = [1,2,3];
arr.includes(2); // true
arr.includes(8); // false
indexOf와 다른점은 내부에 함수를 넣어 좀 더 복잡한 연산을 통해 반환값을 얻을 수 있음
첫번째 true 값만 반환하고 끝임, 만약 없으면 undefined를 반환한다.
const result = arr.find((item) => {
return item % 2 == 0;
});
만족하는 모든 요소를 배열로 반환해준다.
const 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:20},
{name: 'Tom' , age:10},
};
let newUserList = userList.map((user,index) => {
return Object.assign({}, user, {
isAdult: user.age > 19,
});
});
console.log(newUserList);
/*
{name: 'Mike' , age:30, isAdult : true}
{name: 'Jane' , age:20, isAdult : true}
{name: 'Tom' , age:10, isAdult : false}
*/
배열 내의 문자들 합쳐 문자열로 만들기
let arr = ["안녕", "나는" , "철수야"];
// () 안에 쓰는 것이 인수임 , 아무것도 안주면 ,를 기반으로 합쳐짐
let result = arr.join();
console.log(result) // 안녕,나는,철수야
문자열 쪼개기
const users = "Mike,Jane,Tom,Tony";
const result = users.split(",");
console.log(result) // ["Mike","Jane","Tom","Tony"];