변수 & 연산자

황성호·2021년 2월 27일
0

변수

숫자형 - 정수, 부동 소수점 숫자 등의 숫자를 나타낼 때 사용합니다. 정수의 한계는 ±2^53 입니다.,
- 추가로 Infinity(무한대), -Infinity, NaN(계산중 에러) 까지 포함
- 숫자형으로의 변환은 수학과 관련된 함수와 표현식에서 자동으로 일어납니다.('3'/'1')시 3과 1은 숫자형으로 자동 변환

숫자형 변환시 적용 규칙

전달받은 값		형 변환 후
undefined		NaN
null			0
true and false		1 과 0

string 문자열의 처음과 끝 공백이 제거됩니다. 공백 제거 후 남아있는 문자열이 없다면 0, 그렇지 않다면 문자열에서 숫자를 읽습니다. 변환에 실패하면 NaN이 됩니다. 공백은 ' ' 뿐만아니라 '/t', '/n'도 공백

bigint - 길이 제약 없이 정수를 나타낼 수 있습니다. 정수 리터럴 끝에 n을 붙이면 만들 수 있습니다
문자형 - 빈 문자열이나 글자들로 이뤄진 문자열을 나타낼 때 사용합니다. 단일 문자를 나타내는 별도의 자료형은 없습니다.(",',`) - 백틱까지 문자열로!
- 파이썬처럼 ${…}로 표현식 사용가능

불린형 - true, false를 나타낼 때 사용합니다.

불린형 변환시 적용규칙
-숫자 0, 빈 문자열, null, undefined, NaN과 같이 직관적으로도 “비어있다고” 느껴지는 값들은 false가 됩니다.
-그 외의 값은 true로 변환됩니다.

null - null 값만을 위한 독립 자료형입니다. ‘존재하지 않는(nothing)’ 값, ‘비어 있는(empty)’ 값, ‘알 수 없는(unknown)’ 값
undefined - undefined 값만을 위한 독립 자료형입니다. undefined는 할당되지 않은 값을 나타냅니다. 초기 선언후 값을 할당하지 않았을때, age = undefined 명시적으로 선언가능함
객체형 - 복잡한 데이터 구조를 표현할 때 사용합니다.
심볼형 - 객체의 고유 식별자를 만들 때 사용합니다.

typeof 연산자는 피연산자의 자료형을 알려줍니다.
- typeof x 또는 typeof(x) 형태로 사용합니다.
- 피연산자의 자료형을 문자열 형태로 반환합니다.
- null의 typeof 연산은 "object"인데, 이는 언어상 오류입니다. null은 객체가 아닙니다.

인수를 감싸는 대괄호 [...]의 의미
- 매개변수가 필수가 아닌 선택값이라는 것을 의미합니다.

연산자

단항 연산자 +로 Number(..)대체 가능
ex)
alert( +true ); // 1
alert( +"" ); // 0
이항 연산자 +를 사용할 때는 피연산자 중 하나가 문자열이면 다른 하나도 문자열로 변환된다는 점에 주의해야 합니다.
let apples = "2";
let oranges = "3";

이항 덧셈 연산자가 적용되기 전에, 두 피연산자는 숫자형으로 변화합니다.
alert( +apples + +oranges ); // 5

+=, *=, ++, -- 사용가능

비트연산자
비트 AND ( & )
비트 OR ( | )
비트 XOR ( ^ )
비트 NOT ( ~ )
왼쪽 시프트(LEFT SHIFT) ( << )
오른쪽 시프트(RIGHT SHIFT) ( >> )
부호 없는 오른쪽 시프트(ZERO-FILL RIGHT SHIFT) ( >>> )

쉼표연산자
쉼표 연산자 ,는 여러 표현식을 코드 한 줄에서 평가할 수 있게 해줍니다. 이때 표현식 각각이 모두 평가되지만, 마지막 표현식의 평가 결과만 반환되는 점에 유의해야 합니다.

let a = (1 + 2, 3 + 4);
alert( a ); // 7 (3 + 4의 결과)

for (a = 1, b = 3, c = a * b; a < 10; a++) {
 ...
}
진짜 필요한경우만 사용

형변환 과제 다시한번 보기! - 많이 틀렸음

profile
개발!

0개의 댓글