[JavaScript] 배열 메소드 정리해두기

Junseo Kim·2020년 7월 3일
0

tip) 기존 값을 변형 시키지 않는 메소드들은 배열 뿐만 아니라 문자열에도 적용가능하다.

concat()

요소를 합쳐준다.

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] // 기존 값은 유지됨

join()

배열을 문자열로 변형시켜준다. 괄호 안의 문자열로 구분지어 준다. 기본 값은 쉼표이다.

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"

join()과 split() 사용하여 배열 <-> 문자열 다루기

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"

indexOf()

배열 안에 해당 원소가 몇 번째 인덱스에 있는지 찾아준다. 중복이 있을 경우 앞부터 찾는다. 찾는 원소가 없는 경우 -1 리턴

lastIndexOf(): 뒤에서부터 찾을 때 사용

var a=[1, 2, 3, 4, 5];

a.indexOf(3); // 3이 a배열 몇 번째 인덱스인지 찾아준다.(여기서는 2)

slice()

기존 배열을 잘라 새로운 배열을 만든다. 기존 배열은 변하지 않는다. 시작 인덱스부터 끝 인덱스 바로 전까지를 잘라낸다.

var a=[1, 2, 3, 4, 5];

var b=a.slice(2, 4); // a 배열의 2번 인덱스부터 (4-1)번 인덱스까지 배열을 만든다.

=> b=[3, 4]

splice()

기존 배열을 잘라낸다. 기존 배열은 자른 것을 뺀 나머지로 변한다. 시작 인덱스부터 자를 갯수를 지정해준다.

var a=[1, 2, 3, 4, 5];

var b=a.splice(2, 2); // a배열의 2번 인덱스부터 2개를 잘라낸다.

=> b=[3, 4]
   a=[1, 2, 5]

배열 순회 방법

  1. 기본
const array = [1, 2, 3, 4];

for(let i=0;i<array.length;i++) {
    console.log(array[i]);
}
  1. forEach
const array = [1, 2, 3, 4];

array.forEach(function(value) {
    console.log(value);
});
  1. for in(객체)
const obj = {
    name: 'junseo',
    age: 25
};

for(let key in obj) {
    console.log(obj[key]);
}
  1. for of(배열)
const array = [1, 2, 3, 4];

for(let i of array) {
    console.log(i);
}

spread operator

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]

from

배열을 만드는 방법이다.

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]

0개의 댓글