ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • JavaScript 변수와 상수, 배열
    Front-End/JavaScript 2024. 2. 23. 12:20
    728x90
    반응형

    변수(Variable)

        - 선언(Declaration) 및 값 초기화(Intitialization) 이후 값이 변할 수 있는 것
        - 변수 선언 시 별도의 타입을 명시하지 않고, 명명법으로 카멜 케이스를 사용한다
        - 동일하거나 보다 상위의 스코프(Scope)에서 사용중인 이름이나 약속된 키워드를 변수 이름으로 사용할 수 없다.
        - 변수 선언 시 값을 부여(Assignment)하지 않으면 초기 값으로 undefined가 할당된다.
        
    변수 선언

    let [변수 이름];


    위처럼 값 초기화 없이 변수를 선언할 경우 그 값은 undefined로 초기화된다.
        
    변수 선언 및 초기화

    let [변수 이름] = [초기값];


            

    상수(Constant)

        - 선언 및 초기화 이후 값이 변하지 않는 것
        - 명명법으로 카멜 케이스 이용
        - 동일하거나 보다 상위의 스코프(Scope)에서 사용 중인 이름이나 약속된 키워드를 상수 이름으로 사용할 수 없다.
        - 상수 선언 시 값을 부여하지 않으면 오류 발생

    const [상수 이름] = [값];

     

    배열(Array)

        - 하나의 변수가 여러개의 값을 가질 수 있게하기 위해 사용한다.
        - 배열의 작성 형태는 JSON(JavaScript Object Notation) Array의 형태와 같다.


    배열의 선언은 아래의 형태로 한다.

    let [변수 이름] = [[인자, ...]];


    가령, '사과', '바나나', '오렌지' 세개의 문자열을 인자로 가지는 fruits라는 배열은 아래와 같이 만들 수 잇다

    let [fruits] = ['사과', '바나나', '오렌지'];

     


    배열이 가지는 각 항목을 인자라 하는데, 각 인자에 접근하기 위해서는 인자의 순번(인덱스)을 알아야 한다.
    인자의 순번은 가장 첫 번째부터 0부터 시작하여 1씩 증가한다
    배열 변수에 대괄호와 인자 번호를 이용하여 각 인자에 접근할 수 있다

    console.log(fruits[0]);     // '사과'
    console.log(fruits[1]);     // '바나나'



    정적 메서드

        - Object 클래스를 통해 접근할 수 있다.
        - entries(x)    : 오브젝트인 x가 가지는 키와 값을 각각 인덱스 0번과 1번으로 가지는 배열을 인자로 가지는 2차원 배열 반환
        - keys(x)   : 오브젝트인 x가 가지는 키 문자열들을 인자로 가지는 배열 반환
        - values(x) : 오브젝트인 x가 가지는 값들을 인자로 가지는 배열 반환

    객체 속성

        - length    : 배열이 가지고 있는 인자의 개수
            어떠한 배열이 가지는 length 속성에서 1을 뺀 값은 항상 마지막 인자의 인덱스다

    객체 메서드

        - at(x)         : 배열이 가지고 있는 x번째 인자 반환
        - concat(x)     : 호출 대상이 되는 배열과 인자인 배열 x를 이어 붙인 새로운 배열을 반환

        - fill(...)    
            fill(x)         : 호출 대상인 배열이 가지고 있는 모든 인자를 x로 대치한다.
            fill(x, f)      : 호출 대상인 배열이 가지고 있는 인자 중 그 인덱스가 f 이상인 인자를 x로 대치
            fill(x, f, t)   : 호출 대상인 배열이 가지고 있는 인자 중 인덱스가 f이상이고 t 미만인 인자를 x로 대치

        - includes(x)       : 호출 대상인 배열이 가지는 인자 중 그 값이 x와 일치하는 것이 있는가의 여부를 반환

        - indexOf(x)        : 호출 대상인 배열이 가지고 있는 인자 중 그 값이 x와 일치하는 첫 번째 인자의 인덱스를 반환. 그러한 인자가 없다면 -1 반환

        - join(...)
            join()          : 호출 대상인 배열이 가지고 있는 인자를 쉼표(,)로 이어붙인 하나의 문자열 반환
            join(x)          : 호출 대상인 배열이 가지고 있는 인자를 x로 이어붙인 하나의 문자열 반환

        - lastIndexOf(x)    : 호출 대상인 배열이 가지고 있는 인자 중 그 값이 x와 일치하는 마지막 인자의 인덱스를 반환. 그러한 인자가 없다면 -1 반환

        - pop()             : 호출 대상인 배열이 가지고 있는 인자 중 마지막 인자를 제거하고 이를 반환

        - push(x)           : 호출 대상인 배열의 끝에 새로운 인자 x를 추가하고 배열의 길이(length) 반환

        - reverse()         : 호출 대상인 배열이 가진 인자의 순서를 뒤집어 반환

        - shift()           : 호출 대상인 배열이 가지고 있는 인자 중 첫 번째 인자를 제거하고 이를 반환
        
        - slice(...)       
            slice()         : 호출 대상인 배열이 가지고 있는 인자를 그대로 가지는 배열을 복사하여 반환
            slice(f)        : 호출 대상인 배열이 가지고 있는 인자 중 인덱스가 f이상인 인자를 가지는 배열을 복사하여 반환
            slice(f, t)     : 호출 대상인 배열이 가지고 있는 인자 중 인덱스가 f이상이고 t 미만인 인자를 가지는 배열을 복사하여 반환

        - sort(...)
            sort()          : 호출 대상인 배열이 가지고 있는 인자 값을 문자열이라고 간주했을 때 이의 아스키코드를 기준으로 오름차순 정렬 후 반환
            sort(f)         : 호출 대상인 배열이 가지고 있는 인자가 되는, 두 개의 매개변수 a,b 를 받는 함수 f에 대해, 정렬시 a가 선행해야 하는 경우 음수, b가 선행해야 하는 경우 양수, 
                                동율일 경우 0을 반환하는 함수를 직접 작성하여 이에대해 정렬 및 반환

        - splice(...)
            splice(i, d)    : 호출 대상이 되는 배열이 가지고 있는 인자 중 그 순번이 i 이상인 것부터 d개를 제거하여 반환
            splice(i, d, [v, ...])  : 호출 대상이 되는 배열이 가지고 있는 인자 중 그 순번이 i 이상인 것부터 d개를 제거하고, 가변인자 v의 첫번째 인자의 순번이 i가 될 수 있도록 추가하여 반환

    객체 메서드 (화살표 함수)

        - every(f)      : 호출 대상이 되는 배열이 가지고 있는 모든 인자가 함수 f의 전달 인자로 참을 반환하는가의 여부 반환


        - filter(f)     : 호출 대상이 되는 배열이 가지고 있는 인자 중, 함수 f의 전달 인자로 참을 반환하는 인자만을 인자로 가지는 새로운 배열 반환, 이를 만족하는 인자가 없다면 빈 배열 반환


        - find(f)       : 호출 대상이 되는 배열이 가지고 있는 인자 중 함수 f의 전달 인자로 참을 반환하는 첫번째 인자를 반환. 그러한 인자가 없다면 undefined 반환


        - findLast(f)   : 호출 대상이 되는 배열이 가지고 있는 인자 중 함수 f의 전달 인자로 참을 반환하는 마지막 인자를 반환. 그러한 인자가 없다면 undefined 반환


        - forEach(f)    : 호출 대상이 되는 배열이 가지고 있는 인자 전체에 대해 함수 f의 전달 인자로 해당 함수를 단순 반복 실행. 별도의 반환값은 없다.


        - some(f)       : 호출 대상이 되는 배열이 가지고 있는 인자 중, 하나라도 함수 f의 전달 인자로 참을 반환하는가의 여부 반환


    추가

    자바스크립트의 배열은 이름은 배열이지만,

    자바의 ArrayList의 성질에 더 가까우며,

    자바와는 달리 배열의 길이가 동적(선언 후에도 원할 때 길이를 바꿀 수 있음)이다.

    자바에서 스트림(java.util.Stream, 입출력에서 사용되는 스트림과는 다른 단어이다.) 에 담는 것처럼 에 담지 않아도,

    스트림에 담겨있는 것처럼 사용할 수 있다.(중간 연산, 최종 연산 등)

    728x90
    반응형

    'Front-End > JavaScript' 카테고리의 다른 글

    JavaScript DOM, Window  (0) 2024.02.23
    JavaScript 오브젝트  (0) 2024.02.23
    JavaScript 함수  (0) 2024.02.23
    JavaScript 조건문과 반복문  (0) 2024.02.23
    JavaScript 연산자  (0) 2024.02.23
Designed by Tistory.