JS - 기본 문법2

Jaa-van·2023년 3월 19일
0
post-thumbnail

1. 연산자와 수학

자바스크립트는 세 종류의 논리 연산자가 있다
|| (or)
&& ( and)
! ( not)

@ | | (OR)

OR 연산자는 피연산자가 불린형이 아니라면 불린형으로 변환한다.

~자바스크립트의 || 추가기능~
OR 연산자와 피연산자가 여러개인 경우

  • 가장 왼쪽 피연산자부터 시작해 오른쪽으로 나아가며 피연산자를 평가한다
  • 각 피 연산자를 불린형으로 변환하고 true 이면 연산을 멈추고 피연산자의 변환 전 원래 값을 반환한다
  • 모든 피연산자가 false 로 평가되는 경우 마지막 피연산자를 반환한다

왼쪽부터 시작해 평가를 진행하고 truthy 를 만나면 나머지 값은 건드리지 않고 평가를 멈춘다
true || alert("not printed"); // true 에서 평가가 멈춰 alert 가 실행되지 않는다
false || alert("printed");// alert 가 동작한다

@ && ( AND)
두 피연산자가 모두 참일 때 true 를 반환한

AND 연산자와 피연산자가 여러개인 경우

  • 가장 왼쪽 피연산자부터 시작해 오른쪽으로 평가한다
  • 각 피연산자를 불린형으로 변환하고 false 이면 평가를 멈추고 피연산자의 변환 전 값을 반환한다
  • 피연산자가 모두 true로 평가되는 경우 마지막 피연산자가 반환된다'

OR 연산자는 첫 번째 true를 반환하는 반면 AND 연산자는 첫 번째 false 를 반환한다

&& (AND)의 우선순위가 | | (OR) 보다 높다

@ ! (NOT)
NOT 연산자는 인수를 하나만 받고
1. 피연산자를 불린형으로 변환한다
2. 1에서 변환된 값의 역을 반환한다
순으로 작동한다

NOT을 두 개 연달아 사용하면 불린형으로 값이 변환된다
(내장 함수 Boolean 과 같은 결과)

NOT 의 운선순위는 모든 논리 연산자 중에서 가장 높아 가장 먼저 실행된

2. 자료형

자바스크립트는 자료의 타입은 있지만 변수에 저장되는 타입은 언제든지 바꿀 수 있다. 이를 "동적 타입 언어"라고 한다

@숫자형
자바스크립트는 수학 연산에 있어 안전하다
치명적인 에러를 내뿜지 않고 NaN로 연산이 종료된다
또한 무한대(Infinity)의 값도 가질 수 있습니다

@Biglnt
(253-1)(9007199254740991) 보다 크거나
-(253-1)(9007199254740991) 보다 작은 값은 숫자형을 사용해 나타낼 수 없다.
필요할 경우 Bigint 를 통해 표현할 수 있다

@문자형
문자형은 따옴표로 묶는다
1. 큰따옴표
2. 작은따옴표
3. 역따옴표
가 존재한다

큰따옴표와 작은 따옴표는 기본적인 따옴표이지만
역 따옴표는 ${...} 안에 넣어 문자열 중간에 넣어 표현할 수 있다

@불린형
true or false 두 가지 값 밖에 없는 자료형이다

@null
어느 자료형에도 속하지 않고 null 값 만을 포함하는 자료형을 만든다
존재하지 않는, 비어있는, 알 수 없는 값을 표현할 때 쓰인다

@undefined
값이 할당되지 않은 상태를 나타낸다
하지만 undefined 를 명시적으로 할당하는 것도 가능하다

@객체와 심볼

@typeof 연산자
인수의 자료형을 반환하는 함수이다

(1) 내장 객체는 객체형으로 분류되기 때문에 내장 객체인 Math는 object 가 된다

(2) null값은 객체가 아니지만 호환성 유지를 위해 object로 나온다

(3) 피연산자가 함수일 경우 function을 반환한다. 하지만 함수형은 따로 존재하지 않는다

3. 형 변환

@문자형으로 변환
string() -> 숫자를 문자로 변환하는 함수
문자형은 항상 따옴표 사이에 들어있다

@숫자형으로 변환
수학과 관련된 함수와 표현식에서 자동으로 이뤄진다
ex) / 를 적용한 경우

Number(value) 함수를 사용해 주어진 값을 숫자형으로 명시할 수 있다

~글자가 들어가 있는 문자열을 숫자형으로 변환하려고 하면 그 값은 NaN가 된다.~

@불린형으로 변환
1. 0, 빈 문자열, null, undefined, NaN 와 같은 비어있는 값들은 false가 된다
2. 그 되의 값은 ture 가 된다

하지만 문자 "0"은 ture가 된다

0개의 댓글

관련 채용 정보