JavaScript

자바스크립트 객체생성하기(객체에 속성부여하기)

bang2001 2013. 8. 3. 16:14

<HTML>

<HEAD>
<TITLE> :::: 자바스크립트 객체생성하기 :::: </TITLE>

<script language="JavaScript">

/** 과목이라는 객체를 구현하도록 함수로써 설계하였다. */
function subject(my_name, kor, eng, math)
{
this.name = my_name;         //이름
this.kor = kor; //국어
this.eng = eng; //영어
this.math = math;         //수학
}//subject///////////////////////////////

</script>

</HEAD>

<BODY>
<script language="JavaScript">

var young_ho = new subject("영호", 100, 100, 90);
var min_su = new subject("민수", 80, 90, 88);

document.write("<h2>");
document.write("이름 : " + young_ho.name + "<br>");
document.write("국어 = " + young_ho.kor + "<br>");
document.write("영어 = " + young_ho.eng + "<br>");
document.write("수학 = " + young_ho.math + "<p>");
document.write("이름 : " + min_su.name + "<br>");
document.write("국어 = " + min_su.kor + "<br>");
document.write("영어 = " + min_su.eng + "<br>");
document.write("수학 = " + min_su.math + "<p>");
document.write("</h2>");

</script>
</BODY>
</HTML>

------------------------------------------------------------------------------------------

위의 코드는 과목이라는 객체를 생성하는 코드이다. 먼저 자바스크립트에서는 객체를 생성할때
자바처럼 클래스를 통해서 객체생성을 할 수 없다. 제한적인 방법이지만 자바스크립트에서는
함수를 이용하여 객체로 생성될 수 있게끔 구현하고 new예약어를 통해서 함수를 호출하면
일반적인 함수호출이 아닌 객체로써 생성하게 된다. 객체로써 생성하게 되면 객체에 있는 속성에
대해서 접근이 가능해진다. new 예약어를 사용하지 않으면 일반적인 함수로써 인식하게 되고
따라서 이러한 속성들에 대해서 접근할 수 없다. 아래의 화면은 위의 코드에 대한 결과화면이다.

------------------------------------------------------------------------------------------



----------------------------------------------------------------------------------------

이처럼 자바스크립트는 함수를 통해서 객체를 설계하고 new 예약어를 통해서 객체를 생성할
수 있다.