inblog logo
|
LifeLog, DevLog
    JS

    배열

    KYJTHEYJ's avatar
    KYJTHEYJ
    Nov 14, 2025
    배열
    // 배열
    // 여러 데이터 타입을 가진 여러 종류의 값을 한번에 저장하는 데이터 구조
    // -> JS에서는
    
    // 선언법
    // - 대괄호
    let fruit = ["사과", "바나나"];
    
    // - Array 객체를 가져와 사용
    // 만들어진 Array 객체를 가져와서 메모리영역에 저장
    let number = new Array(1,2,3);
    
    // - 빈 배열 선언
    let emptyArray = [];
    
    // 배열의 특징
    // - 순서가 있다
    // 배열의 요소는 0부터 시작하는 인덱스로 접근
    // - 다양한 데이터 타입을 한번에 작성 가능
    
    // 배열과 객체는 참조타입 (스택엔 주소, 힙엔 값이 저장됨)
    // 배열은 순서가 있기 때문에 맨 앞, 맨 끝에만 데이터를 추가하거나 삭제가 논리적으로 가능
    
    // 배열은 논리적 개념이 있어, CRUD 가능
    // READ = fruit[1];
    // UPDATE = fruit[1] = "수박"
    // CREATE = .push, .unshift 등..
    // DELETE = .pop(), .shift() 등..
    
    // 배열관련 함수
    let numbers = [1,2,3,4,5];
    let doublenumbers = numbers.map(number => number * 2); // 스트림의 map 처럼 인자들 제어 가능
    let evennumbers = numbers.filter(number => number % 2 == 0); // 스트림의 filter 처럼 중간 연산

    배열 제어 함수

    기능

    예시

    push

    뒤에 추가

    [1,2].push(3) → [1,2,3]

    pop

    뒤 제거

    [1,2,3].pop() → [1,2]

    unshift

    앞에 추가

    [2,3].unshift(1)

    shift

    앞 제거

    [1,2].shift()

    splice

    특정 위치 조작

    arr.splice(1,1,“A”)

    sort

    정렬

    arr.sort((a,b)=>a-b)

    reverse

    역순

    arr.reverse()

    slice

    일부 복사

    arr.slice(1,3)

    concat

    합치기

    arr1.concat(arr2)

    map

    변환

    arr.map(v=>v*2)

    filter

    조건 추출

    arr.filter(v>10)

    reduce

    누적

    arr.reduce(sum)

    find

    요소 찾기

    arr.find(id=2)

    findIndex

    위치 찾기

    arr.findIndex(v>10)

    flat

    평탄화

    [1,[2]].flat()

    flatMap

    map+flat

    arr.flatMap(…)

    some

    하나라도 true

    arr.some(v>10)

    every

    모두 true

    arr.every(v>0)

    includes

    값 포함?

    arr.includes(2)

    join

    문자열

    arr.join(”,”)

    toSorted

    새 배열 정렬

    arr.toSorted()

    toReversed

    새 배열 뒤집기

    arr.toReversed()

    with

    특정 index만 교체

    arr.with(2,999)

    • 진한 글씨 → ES2023 엔진만 지원

    Share article

    LifeLog, DevLog - https://github.com/KYJTHEYJ

    RSS·Powered by Inblog