본문 바로가기
Coding/Language - JavaSCript

JavaScript - 제3강

by 그냥그렇듯이 2017. 11. 12.
반응형

- 변수와 연산자 -

변수(Variables) - 문자나 숫자와 같은 데이터를 저장해 두는 '상자' 같은 것. 변수는 문자냐 숫자냐 등 종류에 따라 형(type)을 가진다.
크게보면 변수의 종류에는 수치형, 문자열, 논리형, null형, 미정의형 등이 있다.

JavaScrip의 변수 형은 대입한 값에 따라 정해진다. => C와 같이 int로 선언해줄 필요없이 들어오는 값에 따라 변수의 형이 자동으로 결정된다. -> 편리하기도 하지만 보안상으로 취약할 수도 있다.

연산자(Operator) - +,-,x,/ 등이다.

Lesson 1

 a=2;

a=3;

a='1';

b=1;

a=typeof(123;
document.write(a);

 typeof 연산자를 사용하면 변수의 형을 알 수 있다.

Lesson 2

 a=123;

b=-5;

c=0.1;

d=-2.8;

정수, 소수 등과 같은 숫자가 들어가는 변수의 형은 수치형이다.

typeof를 하면 number로 표시됨.

a=true;

b=false;

 논리형, typeof시 boolean표시

 a=null;

 object형은 오브젝트 참조를 나타내는 형이다.
 typeof시 object와 null형 모두 object로 표시됨

undefined

 변수가 미사용 상태일 때는 undefied로 표시

a=1;

delete a;

 변수를 삭제하는 것

Lesson 3

a="hello";

b='a';

문자열형은 큰 따옴표 혹은 작은 따옴표로 둘러싼다.
typeof 연산시 string으로 표시됨 

a="여름";
b="휴가";
c=a+b; 

 

a='dㅓ서 오세요! "JavaScript의 세계"에';

b="이름은'유리나'입니다!" 

문자열 안에서 '를 사용하고 싶을 때는 "로 문자열 전체를 둘러싼다.

"를 사용하고 싶을 때는 '로 둘러싼다. 


\t

\n

\b

\"

\'

\\

\uNNNN(N은 0~9까지의 수치 또는 A(a)~F(f))

 


줄바꿈

백스페이스

" 표시

' 표시

\ 표시

16진수로 된 유니코드 문자


 alert ("어서 오세요! \n\"JavaScript의 세계\"에");

\n을 document.write에서 사용해도 <pre>를 사용하지 않으면 브라우저에는 반영되지 않는다. 

Lesson 4

a="핑거";

b=5;

c=a+b;

 문자열과 수치형을 +로 연결하면 수치가 문자열로 변환된다.


a=5;

b=true;

c=a+b; 


논리와 수치형을 +로 연결하면 논리값이 수치로 변환된다.
true = 1 , false = 0; 

문자열형 + 문자열형

문자열 

문자열 + 수치형

문자열 

수치형 + 문자열

문자열 

수치형 + 수치형 

수치형 

논리형 + 문자열

true or false 

논리형 + 수치형

1 or 0 

null + 문자열

"null" 

null + 수치형

undefined + 문자열

"undefined" 

undefined + 수치형 

NaN 


a = "235";

num=parseInt(a);


parseInt()함수는 문자열을 정수로 바꾼ㄷ. 


a="235.36";

num=parseFloat(a);


parseFloat()함수는 문자열을 소수로 변환한다. 


a=255;

b=true;

str=a.toString();

boo=b.toString();


toString()메서드는 여러가지 형을 문자열로 변환한다.

str=a.toString(); 수치 255를 문자열로 변환한다.

boo=b.toString(); 논리값 true를 문자열로 변환한다.

Lesson 5


+

-

*

/

% (나머지)


 산술 연산자

 

+=

-=

*=

/=

%=


대입연산자 

 

++

--

a++ 계산하고 더해

++a 계산전에 더해


증가 & 감소 연산자 

Lesson 6


 == 값이 같다

=== 값&형도 같다

<

>

<=

>=

!= 같지 않다

!== 같지 않다 or 형이 다르다.
둘중 하나가 참이거나 둘 다 만족한다.


비교연산자 


a=10; b=20;

document.write(a<b); true

document.write(a>b); false

document.write((a=3)+1);



point=90;

a=(point<75)?"합격":"불합격";


 삼항 연산자

조건식 ? 조건식이 참인 경우 : 조건식이 거짓인 경우

Lesson 7


&&

||

!


논리 연산자 


 (50<=a) && (a<100)

!((b==0)||(b==1))

!(b==0)&&(b==1))

(b!=0)&&(b!=1)


 


 a=4;

(a<10>||(document.write("a는 10이상<br>"));

(a<10>&&(document.write("a는 10미만"));


 

Lesson 8 연산자 우선 순위

 
<!DOCTYPE html>

<html>

  <head>

    <meta charset="utf-8">

    <title></title>

  </head>

  <body>

    <script type="text/javascript">

      document.write("2x8-6=",(2*8-6/2),"<br>");

      document.write("2x(8-6)/2",(2*(8-6)/2),"<br>");

      document.write("1-2+3=",(1-2+3),"<br>");

      document.write("1-(2+3)=",(1-(2+3)),"<br>");

    </script>

  </body>

</html>


 Practice


1.지시에 따라 각 변수에 해당하는 값을 올바르게 대입하라

a. Name -> 자신의 이름( " "로 표시)

b. Age 나이

c leftEye 왼쪽 시력

d. rightEye 오른쪽 시력

e. avgEye 양쪽 평균


 Name = "ㅇㅇㅇ";

Age = "22"

leftEye = 0.2;

rightEye = -0.5;

avgEye = (leftEye+rightEye)/2;


2. 경고메시지 출력

안녕하세요, 저는 'ㅇㅇㅇ'입니다.


alert("안녕하세요!\n\t저는\'ㅇㅇㅇ\'입니다.");


3. 다음 연산 값은?

a=1;

x=++a;

document.write(x);

x=a++;

document.write(x);

document.write(a);


x = 2
x=2
a=3


4. 논리 연산자를 사용하여 임의의 연도가 윤년인지를 구하는 조건식을 구하라. 윤년은 4년마다 돌아오며, 100년이 아니라 400년마다 돌아온다.



year = 2008;

 if(((year%4)==0 && (year%100) !=0) || (year%400)==0)

 leapyear = true;

else

leapyear=false;


5. 다음 식의 값을 계산하라.

a=4x10+(8-6)/2
document.write(a);

a=2;
b=4;
c=a==b;
document.write(c);

a = 41;

false; a==b가 같으면 true가, 다르면 false가 c에 대입된다.


댓글