메인메뉴 바로가기

HOME으로 가기


Javascript

기본문법 | [기초] 7.자바스크립트 변수

본문

7. 자바스크립트 변수

 
가. 변수사용법과 예약어
 
변수(Variable)란 데이터값을 저장하는 기억공간이라고 생각할 수 있습니다.
변수는 일반적으로 변수명 = 값 의 형식으로 사용되며 예를들면 myname="홍길동" 과 같은 형태가 되겠죠. 홍길동이라는 값에 따옴표가 사용된 것은 자료형이 문자형이기 때문입니다.
변수는 일반적으로 다음과 같은 형태로 사용자가 편한대로 이름을 정할 수 있습니다.
 
- 변수란 프로그래밍을 하면서 필요한 데이터를 임시로 저장하는 공간입니다.
- 변수의 값은 얼마든지 바꿀 수 있습니다.
- 변수선언은 명령어 var를 사용하여 선언하는 방법과, var없이 변수명에 값을 지정해서 선언하는 방법이 있습니다.
- 변수는 선언과 동시에 값을 할당하는 것이 좋습니다.
- 변수는 대소문자를 구별합니다. 즉 Name와 name는 서로 다른 변수 입니다.
- 변수명에는 영문자, 숫자, 언더스코어,(_) 문자를 사용할 수 있습니다.
- 변수명은 한글을 사용할 수 없고, 첫 글자는 숫자로 시작할 수 없습니다.
- 변수명에는 자바스크립트에서 사용되는 예약어를 사용할 수 없습니다.
 
참고로 자바스크립트에서 예약된 단어는 다음과 같습니다.
 
abstract
case
continue
extends
for
 
import
long
private
static
throw
 
var
boolean
catch
default
false
 
function
in
native
protected
super
 
throw
void
break
char
do
 
final
goto
instanceof
new
public
 
switch
transient
while
byte
class
 
double
finally
if
int
null
 
return
synchronized
true
with
case
 
const
else
float
implements
interface
 
package
short
this
try
 
 
 
나. 자바스크립트에서의 변수선언
 
자바스크립트에서는 변수를 굳이 미리 선언할 필요가 없습니다.
필요한 곳에서 단지 사용만 하면 자동적으로 생성되고 값을 넣는 순간 자료의 형도 자동으로 결정 됩니다.
자바스크립트에서 변수를 명시적으로 선언을 할 경우에는 var 라는 예약어를 사용하여 선언 해 줄 수 있습니다
 
var myName
 
var myName, mySchool, myHome ...
 
var myName = "홍길동", mySchool = "서울여상", myHome = "http://www.home.co.kr"
 
이렇게 변수를 선언하는 방법들은 다양하지만 다른 언어에 비해 간단합니다
 
 
변수.html
 
1 <HTML>
2 <HEAD>
3 </HEAD>
4 <BODY>
5 <scRIPT LANGUAGE="Javascript">
6 <!--
7 var myName = "홍길순", mySchool = "서울여자상업고등학교", myHome =
8 document.write("나의 이름은 : " + myName + ", 나의 학교는 : " + mySchool + " 이며, 홈페이지는 : " + myHome + " 입니다");
9 //-->
10 </scRIPT>
11 </BODY>
12 </HTML>
 
 
다. 지역변수와 전역변수
 
지역변수는 중괄호( { } )가 있는 명령어, 즉 함수 안에서 var를 사용하여 선언된 변수를 일컫습니다. 함수가 끝나고 나면 그 변수는 자동으로 사라집니다.
전역변수는 함수 안에서 var없이 선언된 변수 또는 중괄호 밖에서 선언된 모든 변수를 일컫습니다. 전역변수는 함수가 끝나도 사라지지 않습니다.
 
 
localglobal.html
 
1 <html>
2 <head>
3 <title> Sample script</title>
4 <script language="javascript">
5 var hello = "(함수 밖)전역변수\'hello\'"
6 function thisfunction()
7 {
8 var hello = "(함수 안)지역변수\'bye\'"
9 global = "(함수 안)전역변수\'global\'"
10 var local = "(함수 안)지역변수\"local\'"
11 alert(hello)
12 alert(global)
13 alert(local)
14 }
15 </script>
16 </head>
17 <body>
18 <input type="button" value="실행" onClick=“thisfunction(); alert(hello); alert(global); alert(local);">
19 </body>
20 </html>
 
위와 같은 경우처럼 hello라는 이름으로 전역변수와 지역변수가 동시에 선언되었을 때에는 thisfunction() 내에 있는 alert(hello), alert(global), alert(local)이 먼저 실행된 후 alert(hello), alert(global)이 실행됩니다.
이때 함수 내의 alert(hello) 값은 “...'bye'"이고, 이후 호출된 alert(hello)의 값은 ”...‘hello'"로서 변수명은 같지만 실제적으로 다른 값을 저장하는 기억장소를 갖고 있는 것입니다.
처음 것은 지역변수로서 함수를 실행한 후 소멸되었으므로 이후에는 함수 밖에서 선언된 전역변수가 실행된 것입니다.

또한 함수를 실행한 후 호출된 alert(global)은 함수 내에서 선언되었으나 var로 선언하지 않은 전역변수이기에 소멸되지 않고 다시 실행되지만, alert(local)은 var로 선언된 지역변수로서 함수를 실행한 후 소멸되었기에 실행되지 않습니다. 

  • 페이스북으로 보내기
  • 트위터로 보내기
  • 구글플러스로 보내기