가오리의 코딩일기
7장 연산자: 코어 자바스크립트1 본문
🧩 기본 연산자와 수학
Q1. 전위형과 후위형
let a = 1, b = 1;
let c = ++a;
let d = b++;
→ a = 2, b =2, c =2, d = 1
Q2. 할당 후 결과 예측하기
let e = 2;
let x = 1 + (e *= 2);
→ e = 4, x = 5
Q3. 형변환
"" + 1 + 0; // "10"
"" - 1 + 0; // -1
true + false; // 1
6 / "3"; // 2
"2" * "3"; // 6
4 + 5 + "px"; // "9px"
"$" + 4 + 5; // "$45"
"4" - 2; // 2
"4px" - 2; // NaN
7 / 0; // Infinity
" -9 " + 5; // -9 5
" -9 " - 5; // -14
null + 1; // 1
undefined + 1; // NaN
" \t \n" - 2; // -2
Q4. 덧셈 고치기
let f = prompt("덧셈할 첫 번째 숫자를 입력해주세요.", 1);
let g = prompt("덧셈할 두 번째 숫자를 입력해주세요.", 2);
alert(Number(f) + Number(g));
let a = +prompt("덧셈할 첫 번째 숫자를 입력해주세요.", 1);
let b = +prompt("덧셈할 두 번째 숫자를 입력해주세요.", 2);
alert(a + b); // 3
let a = prompt("덧셈할 첫 번째 숫자를 입력해주세요.", 1);
let b = prompt("덧셈할 두 번째 숫자를 입력해주세요.", 2);
alert(+a + +b); // 3
→ Number ()를 사용하거나 변수 앞에 +를 붙여줄 수 있다
🔗 Number() vs. parseInt()
더보기
🧩 Number(str)
→ 문자열을 인자로 받으면 해당 문자열을 숫자로 바꿔준다
→ 문자열이 숫자가 아닌 경우, 문자열과 숫자가 섞여 있는 경우 NaN이 저장된다
🧩 parseInt(str)
→ 문자열을 인자로 받으면 해당 문자열을 숫자로 바꿔준다
→ 숫자로 시작하는 경우 숫자가 끝날 때까지만 형변환을 하여 저장된다
→ 숫자로 시작하지 않는 경우 NaN이 저장된다
🧩 비교 연산자
Q1. 아래 표현식의 결과를 예측해보세요
5 > 4; // true
"apple" > "pineapple"; // false
"2" > "12"; // true
undefined == null; // true
undefined === null; // false
null == "\n0\n"; // false
null === +"\n0\n"; // false
'HTML+CSS+JavaScript > DeepDive' 카테고리의 다른 글
8장 제어문 (0) | 2022.08.01 |
---|---|
7장 연산자: 코어 자바스크립트2 (0) | 2022.07.28 |
7장 연산자 (0) | 2022.07.26 |
6장 데이터 타입 (0) | 2022.07.20 |
5장 표현식과 문 (0) | 2022.07.13 |