배열 이해하기(1)

omnigi·2022년 2월 17일
0

Typescript Do it

목록 보기
12/23

배열 이해하기

자바스크립트에서 배열은 Array클래스의 인스턴스이며 다음코드 처럼 선언합니다.

let 배열이름 = new Array
배열이름.push(1); 배열이름.push(2); 배열이름.push(3)

[]단축 구문

앞에서 살펴본 코드 스타일로 배열을 만드는 것은 번거롭기 때문에 단축구문인 []을 사용 할 수 있습니다.

let numbers = [1, 2, 3]

js에서 배열은 객체입니다.

배열은 Array 클래스의 인스턴스인데 클래스의 인스턴스는 객체입니다.

배열의 타입주석

let numArray:number[] = [1, 2, 3]
let strArray:string[] = ["doyoon", "junsong"]

문자열과 배열 간 변환

문자열을 배열로 전환할 때는 string클래스의 split 메서드를 사용합니다. split메서드는 문자열을 문자로 쪼개는 기준인 구분자를 입력받아 문자열을 string[] 배열로 만들어줍니다.

split(구분자: string):string[]

string[]타입의 배열을 다시 string 타입으로 변환하려면 Array 클래스의 join 메서드를 사용합니다.

join(구분자: string): string

join.ts

export const join = (strArray: string[], delim: string =""):string =>{
    return(strArray.join(delim))
}

index.ts

import {join} from "./05/join"

console.log(
    join(["d", "o", "y", "o", "o", "n"])
)

배열에 새로운 내용을 추가하거나 수정 할 때에는 아래 코드들을 사용합니다.

배열 추가 : Array.push(), Array.unshift(), Array.splice()
배열 삭제 : Array.pop(), Array.shift(), Array.splice()

push

var arr = ['a', 'b', 'c'];

// arr = ['a', 'b', 'c', 'd']
arr.push('d'); // 배열의 끝에 요소를 추가

unshift

var arr = ['a', 'b', 'c'];

// arr = ['d', 'a', 'b', 'c']
arr.unshift('d'); // 배열의 앞쪽에 요소를 

splice

var arr = ['a', 'b', 'c'];

// arr = ['a', 'b', 'd', 'c']
arr.splice(2, 0, 'd'); // index 2 ('c')의 위치에 요소를 추가

// arr = ['a', 'b', 'd', 'c', 'e', 'f']
arr.splice(4, 0, 'e', 'f'); // index 4의 위치에 2개의 요소를 추가

배열의 요소 삭제
pop

var arr = ['a', 'b', 'c', 'e', 'f'];

// arr = ['a', 'b', 'c', 'e']
arr.pop(); // 배열의 마지막 요소를 제거

// arr = ['a', 'b', 'c']
var popped = arr.pop(); // 제거한 요소를 반환 받을 수 있음

// popped = 'e'

shift

var arr = ['a', 'b', 'c', 'e', 'f'];

// arr = ['b', 'c', 'e', 'f']
arr.shift(); // 배열의 첫번째 요소를 제거

// arr = ['c', 'e', 'f']
var shifted = arr.shift(); // 제거한 요소를 반환 받을 수 있음

// shifted = 'b'

splice

var arr = ['a', 'b', 'c', 'e', 'f'];

// arr = ['a', 'b', 'e', 'f']
arr.splice(2, 1); // index 2 부터 1개의 요소('c')를 제거

// arr = ['a', 'f']
arr.splice(1, 2); // index 1 부터 2개의 요소('b', 'e')를 제거

// arr = ['a']
removed = arr.splice(1, 1); // 제거한 요소를 반환 받을 수 있음

// removed = 'f'

delete

var arr = ['a', 'b', 'c', 'e', 'f'];

// arr = ["a", undefined, "c", "e", "f"]
delete arr[1]; // delete로 배열을 삭제할 경우 요소는 그대로 존재하며 값만 삭제 됨

0개의 댓글