본문 바로가기

JavaScript

JavaScript 연산자

연산자 : 프로그래밍에서 연산자란 비교,논리,문자열에 대한 연산자가 존재한다

할당연산자:오른쪽에있는값을 왼쪽에 담는기능을한다 이때 등호는 =를 써준다 프로그램에서 ==등호는 수학에서 이콜 즉 같다라는 의미이다 

ex) 
a = "math"

console.log(a==5)
이제부터 a에 값은 "math"라는  문자열이된다 a에 math를  담았기때문이다

console.log를이용해 console창에 a==5 라는조건을 출력하면 false가 나온다 왜? a="math"로써 데이터타입이 문자이고  숫자가아닐뿐더러 값이 동일하지않기때문이다 이게 할당연산자이다

복합 할당연산자 : 왼쪽에 있는값을 오른쪽에 그대로 복사해서 같다 붙여놓는 형식이다
ex)

x+=y -> x = x+y

x-=y -> x = x-y

x*=y -> x = x*y

x/=y -> x = x/y


다른것도 많지만 같은 방식이다  

참고로 연산할때 %는 나눈후에 나머지를 출력하는 등호이다
ex)

x = 10%3 
console.log(x)


결과값은 1이나올것이다 10을3으로나누면 나머지는 1이기때문이다

비교연산자 : 두 대상을 비교한다 

==과 === : 두대상이 같다는 의미이다 수학에서 이콜 즉 동일하다는 의미와같다

!= : 수학에서 부등호 ≠ 과 같다 두대상이 다르다는것을 표현할때쓴다 쉽게설명하면 !는 not과같은의미라고 생각해도좋다

ex)

let a=1 
let b=1
let c=2
console.log(a == b) ->true 
console.log(a != c)->true


==와 ===의차이 

 

==: 두대상에 타입은 비교하지않는다 
===: 두대상에 타입까지 비교한다
ex)

a=1
b="1"

console.log(a==b) -->true
console.log(a===b) -->false


==은 type을비교하지않아서 a=숫자이고 b=문자인데도 브라우저가 문자를 숫자로 컴파일(변환)해서 같은 1이라고 판단하기에 true를 출력한다 
반면 ===은 type까지 비교하기때문에 a=숫자이고 b는 문자이기때문에 a와b는 다른거야! 라고 생각하기때문에 false를 출력한다

==을 사용하면 위처럼 예상치못한 오류가 발생할수 있기때문에 ===을사용하는 습관을 드리는것이 권장된다.

<, > , <=, >=
위 등호들은 무엇이크고 작은지를 비교할때쓰는 등호들이다
이상,이하,미만,초과가 무엇인지 알고있다는 가정하에 <=,>= 이라는등호는 이상 이하를 나타낸다 반면 <, > 등호는 미만 초과를 나타낸다 이상,이하 등호를 사용할때 주의점은 =을 붙일때에는 <,> 다음에 붙여야한다는 것이다

ex)

a=1
b=2
console.log(a<b)
console.log(b>a)
console.log(a<=b)
console.log(b>=a)



산술연산자 : 기본적으로 사칙연산(+,-,*,/)를하는 연산자이다 나머지를 구하는 %와 숫자에 1을 더하거나 빼주는 ++,--가존재한다
ex)

let a=3
let b=5

console.log(a+b)
console.log(a-b)
console.log(a*b)
console.log(a/b)
console.log(a%b)
console.log(++a)
console.log(--b)


이때 ++과 -- 에 좀더 설명을 붙이자면 ++이나--를 변수앞에다 붙여주면 먼저 더해주거나 빼주지만 ++를 변수 다음에 붙이면 프로그램이 전부 실행된후에 
더해주거나 뺴주므로 값에 변화가없어보인다
ex1)
let a=3
let b=5
console.log(++a)
console.log(--a) 
위코드는 변수앞에 ++,--를해서 둘다 4를 출력하지만

 

ex2)

let a=3
let b=5
console.log(a++)
console.log(b--)
console.log(a)
console.log(b)

위코드는 a=3 b=5를 출력한다 더해진상태이긴하지만 프로그램이 돌아간후에 더해줘서 console창에서 3과5를 출력한다 그후 다시 a와b를 출력해보면 값이 더해지고 빼진것을 확인 할 수 있다.


이렇게 ++나--처럼 1씩더하거나 빼주는것을 증감식이라부르고 나중에 반복문을 배울때 많이 사용된다 

논리연산자: 조건에따라 참 거짓을 구분하는데 이떄 and,or,not이사용된다.

 

and = 조건중하나라도 false가있다면 false를 출력한다 즉 조건 전체가 참이여야 true를 출력한다  &&를 이용해 표현한다
or = 조건중 하나라도 true가있다면 true를 출력한다 즉 조건중 일부만 참이여도 true를 출력한다  ||(shift+\)를이용해 표현한다
not = 어떠한 조건에값이 true이든 false이든 그반대값을 출력한다

ex)

let calc1=true &&true ->true출력
let calc2=true && false ->false출력
let calc3=true || false ->true출력
let calc4=true || true ->true출력
let calc5 =!true  -> false출력
let calc6 =!false -> true출력


console.log를이용해 한번 확인해보길 바란다 

문자열 연산자 : 문자열도 더할 수 있다 이때 +기호를 사용하며 " " 는 공백으로써 띄어쓰기 역할을 한다 
ex)

let a= "hello" 
let b= "world"
lat string = a + " " + b + "JS"


코드에디터에서 아무리 띄어쓰기를 해도 띄어지지않으니 꼭 " " 라는 공백을 더해줘서 띄어쓰기를 하자

 

템플릿 리터럴 이라고해서 ` ` 을이용해 문자열을 더할때 +기호없이도 문자열을 더할수 있는데 나중에 알려주도록하겠다!

'JavaScript' 카테고리의 다른 글

JavaScript 함수  (0) 2022.03.13
JavaScript 반복문  (0) 2022.03.13
JavaScript 조건문  (0) 2022.03.13
JavaScript의 데이터 타입  (0) 2022.03.13
JavaScript 변수  (0) 2022.03.03