tip) 기존 값을 변형 시키지 않는 메소드들은 배열 뿐만 아니라 문자열에도 적용가능하다.
요소를 합쳐준다.
var a=[1, 2, 3, 4, 5];
var b=a.concat(6);
=> b=[1, 2, 3, 4, 5, 6]
a=[1, 2, 3, 4, 5] // 기존 값은 유지됨
배열을 문자열로 변형시켜준다. 괄호 안의 문자열로 구분지어 준다. 기본 값은 쉼표이다.
var a=[1, 2, 3, 4, 5];
var b=a.join();
=> b="1,2,3,4,5"
var c=a.join("-");
=> c="1-2-3-4-5"
var d=a.join("");
=> d="12345"
var str="hello, world hi";
var s1=str.split(""); // 모든 문자 각각
=> ["h", "e", "l", "l", "o", ",", " ", "w", "o", "r", "l", "d", " ", "h", "i"]
s1.join(""); // 원상 복구(split한 문자열을 그대로 Join해주면 됨)
=> "hello, world hi"
var s2=str.split(" "); // 공백 기준
=> ["hello,", "world", "hi"]
s2.join(" ");
=> "hello, world hi"
배열 안에 해당 원소가 몇 번째 인덱스에 있는지 찾아준다. 중복이 있을 경우 앞부터 찾는다. 찾는 원소가 없는 경우 -1 리턴
lastIndexOf(): 뒤에서부터 찾을 때 사용
var a=[1, 2, 3, 4, 5];
a.indexOf(3); // 3이 a배열 몇 번째 인덱스인지 찾아준다.(여기서는 2)
기존 배열을 잘라 새로운 배열을 만든다. 기존 배열은 변하지 않는다. 시작 인덱스부터 끝 인덱스 바로 전까지를 잘라낸다.
var a=[1, 2, 3, 4, 5];
var b=a.slice(2, 4); // a 배열의 2번 인덱스부터 (4-1)번 인덱스까지 배열을 만든다.
=> b=[3, 4]
기존 배열을 잘라낸다. 기존 배열은 자른 것을 뺀 나머지로 변한다. 시작 인덱스부터 자를 갯수를 지정해준다.
var a=[1, 2, 3, 4, 5];
var b=a.splice(2, 2); // a배열의 2번 인덱스부터 2개를 잘라낸다.
=> b=[3, 4]
a=[1, 2, 5]
const array = [1, 2, 3, 4];
for(let i=0;i<array.length;i++) {
console.log(array[i]);
}
const array = [1, 2, 3, 4];
array.forEach(function(value) {
console.log(value);
});
const obj = {
name: 'junseo',
age: 25
};
for(let key in obj) {
console.log(obj[key]);
}
const array = [1, 2, 3, 4];
for(let i of array) {
console.log(i);
}
let array = ["hello", "bye", "nice", "meet"];
let newArray = [...array]; // array의 내용을 줄여서 표현한 것 => ["hello", "bye", "nice", "meet"]
let newArray2 = [100, ...array, 250]; // 중간에 끼워서 사용할 수도 있다. => [100, "hello", "bye", "nice", "meet", 250]
배열을 만드는 방법이다.
let newArray = Array.from([1, 2, 3, 4, 5, 6]);
console.log(newArray); // [1, 2, 3, 4, 5, 6]
arguments로 값을 넘겨서 사용할 수도 있다.
function makeArray() {
let newArray = Array.from(arguments);
console.log(newArray);
}
makeArray(1, 2, 3, 4, 5); // [1, 2, 3, 4, 5]