생활코딩

Coding Everybody

코스 전체목록

닫기

변수

변수(Variable)는 (문자나 숫자 같은) 값을 담는 컨테이너로 값을 유지할 필요가 있을 때 사용한다. 여기에 담겨진 값은 다른 값으로 바꿀 수 있다. 변수는 마치 (사람이 쓰는 언어인) 자연어에서 대명사와 비슷한 역할을 한다.

변수의 선언

JavaScript에서 변수는 var로 시작한다. var은 변수를 선언하겠다는 것을 의미한다. var을 생략 할수도 있지만 이것은 유효범위라는 것에 영향을 미친다. 그렇기 때문에 var의 의미를 명확하게 이해하기 전까지는 var를 사용하는 것이 권장된다. 유효범위에 대해서는 뒤에서 살펴볼 것이다. 변수의 이름은 $, _, 혹은 특수 문자를 제외한 모든 문자로 시작할 수 있다. 다음 예제는 변수에 값을 대입한 예제다.

var a = 1;
alert(a+1);  //2

var a = 2;
alert(a+1);  //3

//은 주석(comment)으로 코드에 부가적인 설명을 쓰거나 사용하지 않는 코드를 비활성화시키기 위해서 사용한다. //뒤에 따라오는 내용은 해석되지 않는다.

세미콜론(;)은 하나의 구문이 끝났음을 명시적으로 나타내는 기호다. 다음처럼 한줄에 여러구문을 사용하고 싶을 때 세미콜론이 유용하다.

a = 1; alert(a+1);

JavaScript에서는 세미콜론을 생략할 수 있는데, 이 경우 줄바꿈을 명령의 끝으로 간주하게 된다.

위의 실습 결과는 각각 2와 3이 출력될 것이다. 변수 a에 담겨 있는 값이 1일 때는 a+1의 결과가 2가 된다. 두번째 결과가 3이 된 것은 a의 값이 2로 바뀌었고, 2+1의 결과인 3이 출력된 것이다.

다음 예제는 변수의 값이 꼭  숫자만 올 수 있는 것은 아니라는 것을 보여주기 위해서 만든 예제다.

var first = "coding";
alert(first+" everybody");

변수 a에 coding ,변수 b에 everybody를 활당하는 방법은 아래와 같다.

var a = 'coding', b = 'everybody';
alert(a);
alert(b);

 변수가 없다면

변수는 코드의 재활용성을 높여준다. 예를들어서 100에 10을 더하고, 10을 나눈 후에 다시 10을 빼고 거기에 10을 곱해야 한다고 치자. 그리고 각 단계마다 그 결과를 출력해야 한다면 코드는 아래와 같을 것이다.

alert(100+10);
alert((100+10)/10);
alert(((100+10)/10)-10);
alert((((100+10)/10)-10)*10);

그런데 계산해야 할 값을 100이 아니라 1000으로 바꿔야 한다면 위의 코드를 모두 수정해야 할 것이다. 변수를 적용해보자.

a = 100;
a = a + 10;
alert(a);
a = a / 10;
alert(a);
a = a - 10;
alert(a);
a = a * 10;      
alert(a);

위의 코드에서 첫번째 줄의 100을 다른 숫자로 바꾸면 나머지 로직에 대입되는 변수의 값이 모두 바뀐다. 수정해야 할 코드가 적다는 것은 그만큼 해야 할 일이 줄어든다는 의미고, 그 과정에서 버그가 발생할 가능성을 낮출 수 있다. 변수의 효용은 뒤에서 배우게 될 반복문, 조건문, 함수와 결합되면 더욱 더 중요해진다.

댓글

댓글 본문
  1. 성공중
    24.7.25 완료
  2. 공부하자
    학습완료
  3. 최산해
    감사합니다
  4. DreamBoy
    2023.10.04. JavaScript 입문 수업 - 자바스크립트 기본 시작 - 변수 파트 수강했습니다.
  5. Asha
    감사합니다
  6. nekov099
    20230528
  7. 난나
    230305 감사합니다
  8. 건강행복
    감사합니다.
  9. 하앙
    완료
  10. AgainstartJH
    2023년 01월 04일 수요일 학습완료!
  11. 220929
  12. 헤밍웨이
    220824 변수의 효용성까지 잘 봤습니다!
  13. gusxorla
    220808
  14. 강동휘
    3
  15. 손도로도로
    3
  16. 지빅
    20220704
  17. 양빵
    220627
  18. 효키
    220623
  19. 요기효
    220531
  20. 220525
  21. Franz
    22.05.10
  22. 진진리
    22.04.20 완료 입니다 ^^
  23. 너구리기린
    2022.04.05
  24. 너구리기린
    2022.04.05
  25. 힘힘힘
    2022.04.03
  26. 자뤼닌
    2022.03.31 완료
  27. 도레미
    2022.03.18
  28. SNMM
    220303 완료
  29. chrr
    22.02.15. 수강완
  30. 임앤강
    2022-02-02 수업 감사합니다.
  31. 주재윤
    완료
  32. 소설가
    2021-1-14 완료
    고맙습니다.
  33. 낀찐
    2022. 01. 12 완료
  34. 빌리
    2021.12.17 수강 완료
  35. 마스터하자
    2021.12.9 변수부분 완료
  36. pmxsg
    2021.12.09 수강완료
  37. yundh812
    21.12.07 학원 수업이 끝나고 조금씩 읽고 있습니다. js를 공부할 때 html이나 css보다 개념을 잡는 부분?에서 많이 힘들었는데 생활코딩님 설명은 늘 깔끔하고 초급자를 위해 쉽게 설명해주셔서 좋네용. ㄹㅇ사기캐..
  38. 21.11.29
  39. 드림보이
    2021.11.24. 변수 파트 수강완료
  40. 석이
    21/11/10
  41. qusip
    2021 11 07
  42. 안녕,쨈
    21/10/26
  43. seaWater
    2021. 9. 14. 완료
  44. labis98
    20210817 good!!!
  45. choi
    완료
  46. 2021.07.22 완
  47. 나승재
    071321
  48. 낭만고양이
    수강완료
  49. GelandeWagen
    210531 ok
  50. Amousk
    감사합니다.
    21.05.08 완료
버전 관리
egoing
현재 버전
선택 버전
graphittie 자세히 보기