push() : 뒤에 추가
pop() : 뒤부터 삭제
unshift() : 앞에 추가
shift() : 앞부터 삭제
splice(n,m): n번째 요소부터 m개 삭제
splice(n,m,x) : n번째 요소부터 m개 삭제 후, x를 n번째에 추가
-> splice는 삭제된 요소를 반환한다.
: n번째 요소부터 m까지 반환. m은 포함하지 않음
: 인자를 합쳐서 새 배열 반환
let arr = [1,2];
arr.concat([3,4,5,6]);
or arr.concat([3,4],[5,6]);
or arr.concat([3,4],5,6);
let arr = [10, 20, 30];
for (let value of arr) {
console.log(value);
}
(+) 문자열인 경우
let iterable = "boo";
for (let value of iterable) {
console.log(value);
}
// "b"
// "o"
// "o"
users.forEach( (item, index, arr) => { }));
item : 요소 하나가 넘어온다.
index : 인덱스가 넘어온다.
arr(생략 가능) : 해당 배열 자체가 넘어온다.
arr.indexOf(x)
arr에서 원소 x를 찾아서 인덱스 반환 (가장 먼저 찾은 인덱스)
arr.indexOf(x,n)
n번째 위치 이후에서부터 원소 x를 찾아서 인덱스 반환
arr.lastIndexOf(x)
뒤에서부터 찾아서 인덱스 반환
arr.includes(x);
arr가 x라는 원소를 가지는지 확인, true or false 반환.
const result = arr.find((item) => {
return item % 2 === 0;
});
// item으로 arr의 원소 값이 넘어감.
// 위 예제는 짝수를 찾는 예제.
> 2
arr 원소 중 fn가 참이 되는(true를 반환하는) 원소의 인덱스를 반환.
가장 먼저 조건을 만족시킨 하나의 원소만을 반환함.
하나도 없다면 undefined을 반환.
사용법은 find와 같다.
하지만 filter는 만족하는 모든 요소를 배열로 반환한다.
let userList= [
{ name: "Mike", age:30 },
{ name: "Jane", age:27 },
{ name: "Tom", age:10 },
];
let newUserList = userList.map( (user, index)=> {
return Object.assign({},user, {
isAdault: user.age> 19,
id: index+1,
});
});
join() => 요소를 쉼표로 구분하여 문자열 구성
let arr= ["안녕하세요","저는","모니카예요"];
let result = arr.join();
> 안녕하세요,저는,모니카예요
or let result = arr.join('-');
> 안녕하세요-저는-모니카예요
let str = "Hello, There";
let result = str.split("");
> "H","e","l","l","o"," ","T",......
or let result = str.split(",");
> "Hello,"," There"
배열을 typeof 하면 객체 (Object)로 나온다.