1-1 ~ 2-6 강의 내용 중

console.log(5e-4)   // 10진법
console.log(0x1a1)  // 16진법
console.log(0b1111) // 2진법
console.log(0o15)   // 8진법
// output
0.0005
417
15
13

C++의 경우 형변환을 할때 type promotion을 응용하거나, stoi(), int()와 같은 함수들을 이용하였는데 javascript의 함수의 parseInt 같은 부류들은 처음 접해보는 함수였습니다.

// 형변환 함수
parseInt('142')
parseFloat('3.14')
parseInt(111, 2)    // 7 출력, 이런 식의 사용이 가능
Number('124')
parseInt('3월') // '월'은 제외하고 '3'을 추출해냄
Number('3월')   // NaN 출력
// 문자열 입력
prompt()
// 무한
Infinity    // 숫자 취급

계산 팁

그냥 소수끼리 더하면 모든 자릿수가 출력되어 원하는 output이 안 나오게 되어서, 강의에 나온 계산 꿀팁으로는 소수에 정수(10의 승)을 곱해준다음 똑같은 10의 승을 나누어 줌으로써 소수를 출력하는 방법을 이용할 수 있다고 합니다.

(0.1 * 10) + (0.3 * 10) / 10

비교

true > false 을 비교하면 true가 나온다. 그 이유는 true == 1, false == 0과 같기 때문입니다.
문자열의 비교는 사전순을 기준으로 비교하게 됩니다. 그리고 아스키코드를 리턴하는 방법으로는 charcodeAt() 함수를 이용하는 방법입니다.

값들의 비교

javascript의 경우 값들의 비교는 자동으로 형변환 되어서 처리되는 경우가 있으므로, 비교를 할경우 주의해야합니다.

  • javascript의 경우 '같다' 비교를 하는 방법이 두 가지입니다.
    + 첫번째 방법은'=='를 이용하는 방법입니다. 이 방법의 경우 '1' == 1 을 true를 출력합니다.
    + 두 번째 방법은 '==='을 이용하는 방법입니다. 이것은 C++ '=='과 같습니다. javascript의 몰래 형변환 경우가 싫다면 엄격하게 비교를 위해 '==='을 이용하는 것이 좋다고 합니다.
  • '다르다'의 경우도 위와 같이, 1. '!=' 2. '!=='으로 나눠집니다. 둘의 차이는 '같다'와 똑같이 엄격한 정도가 다릅니다.

논리 연산자

'&&'과 '||'으로 다른 언어와 똑같습니다. 참고로, '!'도 똑같습니다.

(중요) false, 0, NaN, undefined, null, ''(빈 문자열)을 불 값으로 형변환 했을 시 'false'가 됩니다.

profile
노력하며 살려고 노력하는 사람

0개의 댓글

Powered by GraphCDN, the GraphQL CDN