본문 바로가기

아래로 스크롤 해주세요!

My Reference Book

-

제가 배웠던것을 한곳에 정리해보았어요!

HTML

HTML 태그 톺아보기

HTML

자세히보기

CSS

CSS 속성 톺아보기

CSS

자세히보기

JAVASCRIPT

JS 실행문 톺아보기

JAVASCRIPT

자세히보기

최신댓글

Javascript

전역변수와 지역변수

by C0Di 2022. 7. 28.
728x90

지역변수/전역변수

변수는 함수 블록을 기준으로 선언 위치에 따라 '전역 변수','지역 변수'로 나뉩니다.

'전역 변수'는 함수 블록{} 밖이나 안에서 자유롭게 사용 가능하지만
'지역 변수'는 함수 블록{} 내에서만 사용 가능합니다.


"전역" 변수 예시

위와같이 안 또는 밖에서 사용합니다.

{
    var kor = 90; //밖에서 전역변수 사용
    function getScore(){
        kor=100; //안에서 전역변수 사용
        document.write(kor);
    }
    document.write(kor);
}
결과보기

100

"지역" 변수 예시

위와같이 지역 변수는 {} 블록 내부에서만 사용 가능합니다.

{
    var kor = 90;
    function getScore(){
        var kor=100; //지역변수
        // console.log(kor);//100
        document.write(kor);
    }
    document.write(kor);
}
결과보기

90

함수 / 블록 레벨 스코프

var는 함수 {} 내부에서만 지역 변수가 존재하고 일반{}이나 제어문{}에서는 지역변수가 존재하지 않습니다.

{
    var x = 10;
    let y = 10;
    const z = 10;
    {
        var x = 20; //전역 변수
        let y = 30; //지역 변수
        const z = 40; //지역 변수
    }
    document.write(x); //전역 변수로써 먼저 선언된 값 20 출력
    document.write(y); //지역 변수로써 먼저 선언된 값 10 출력
    document.write(z); //지역 변수로써 먼저 선언된 값 10 출력
}
결과보기

201010

함수 / 블록 레벨 스코프

var는 함수 {} 내부에서만 지역 변수가 존재하고 일반{}이나 제어문{}에서는 지역변수가 존재하지 않습니다.

{
    //함수의 전역변수
    var sum1 = 10;
    function add1(){
        sum1=20;
    }
    add1();
    document.write("전역"+sum1);

    //함수의 지역변수
    var sum2 = 30;
    function add2() {
        var sum2 = 40
        document.write("지역"+sum2);
    }
    add2();
    document.write('전역'+sum2);

    //불록의 지역변수
    var num1 = 50;
    if (num1 === 50){
        var num1 = 60;
    }
    document.write("전역"+num1);
    let num2 = 70;
    if(num2===70){
        let num2 = 80;
        document.write("지역"+num2);
    }
    document.write("전역"+num2)
}
결과보기

전역20지역40전역30전역60지역80전역70

728x90
반응형

'Javascript' 카테고리의 다른 글

join() / pop() / push() 에 대하여 알아보자!  (9) 2022.08.11
요소 선택 해보기~  (6) 2022.08.06
함수  (6) 2022.07.26
데이터 타입  (6) 2022.07.26
조건문  (5) 2022.07.26

댓글

#HASH_TAGS

-

1

JQuery ImageSlideEffect 화사한가요? 오늘도 웹표준은.. 제이쿼리 Method 코드 멈추지 않는 ' j ' 시리-즈 필터선택자 scroll-snap-align 테스트테스트 HTML 오늘은 내가바로 오징어! 이건 또 뭐람 scroll-snap-type 다크모드 내일은 즐거운 월요일 슬라이드 결과 : 월요일 오징어 1Kg 당 3000원 테스트 오늘 조업 마감했습니다. 메서드 오징어 두마리 포획 완료 선택해주세요 오징어 한마리 수확 완료! 숙제가 다양해서 너무 좋아요 울적하니 꽃을 달아봤습니다 코딩 공부