Base64
8비트 바이너리 데이터(실행파일이나 Zip파일 등)를 문자코드에 영향을 받지 않는 공통 ASCII 영역의 문자들로만 이루어진 일련의 스트링으로 바꾸는 인코딩 방식을 가리키는 개념
Base64 인코딩은 8비트 바이너리 데이터를 문자 코드의 충돌 없이 전송 가능한 ASCII 문자열로 변환하는 인코딩 방식입니다. 이 변환 과정에서 바이너리 데이터는 6비트 단위로 나누어지며, 각 6비트 블록은 대응되는 Base64 표준 문자로 치환됩니다. 이때 사용되는 문자들은 알파벳 대소문자(A-Z, a-z), 숫자(0-9), '+' 및 '/'로 총 64개입니다. 핵심적인 추가 내용은 다음과 같습니다:
1. Base64 인코딩은 원본 데이터 크기에 비해 약 33% 정도 크기 증가가 발생합니다. 이는 원래의 8비트 데이터를 6비트 블록으로 나누기 때문입니다.
2. 이메일 전송을 비롯한 다양한 텍스트 기반 시스템에서 바이너리 데이터를 전송하거나 저장할 때 사용됩니다.
3. 웹에서는 이미지나 기타 미디어 파일을 문자열로 포함시켜 전송할 때에도 Base64 인코딩을 사용합니다.
요약하면, Base64 인코딩은 바이너리 데이터를 안전하게 전송하고 저장하는 데 사용되는코딩 방식으로, ASCII 문자만 사용하여 데이터 충돌 없이 바이너리 데이터를 문자열로 변환하는 기능을 제공합니다.
바이너리 데이터는 컴퓨터에서 사용되는 정보를 나타내는 데 사용되는 0과 1의 비트(bit)로 구성된 데이터 형식입니다. 이진 데이터는 인코딩이나 구조를 가질 수 있으며, 일반적으로 텍스트 데이터와는 구별되어 처리됩니다. 바이너리 데이터는 JPEG 이미지, MP3 오디오, 실행 파일 등 다양한 파일 형식과 응용 프로그램에서 사용됩니다. 바이너리 데이터는 효율적인 저장 및 전송을 위해 이진 형태로 처리되며, 일반적으로 사람이 직접 읽고 쓸 수 없습니다. 그러나 바이너리 에디터, 헥사 에디터 등 전문 도구를 사용하여 바이너리 데이터를 분석할 수 있습니다. 또한 전송을 위해 Base64 인코딩과 같은 인코딩 방법을 사용하여 바이너리 데이터를 텍스트 형태로 변환할 수도 있습니다.
falsy
falsy값은 부울로 변환 될 때 false가 되는 값.
"", 0, null, undefined, NaN, false 등
Falsy 값은 JavaScript에서 조건문이나 논리 연산에서 false로 간주되는 값입니다. 이 값들은 명시적으로 false가 아니더라도, 불리언 타입으로 변환할 때 false로 처리됩니다. 다음과 같은 목록에서 추가적인 핵심 사항을 확인할 수 있습니다.
1. "", 빈 문자열: 문자열이 없거나 길이가 0인 경우 falsy로 간주됩니다.
2. 0, -0: 숫자 0 또는 음의 0은 falsy 값입니다.
3. null: 값이 없음을 나타내는 특별한 객체로, falsy 값에 속합니다.
4. undefined: 아직 값이 할당되지 않은 변수나 속성은 undefined이며, falsy 값입니다.
5. NaN: 숫자가 아닌 값을 의미하는 특별한 숫자객체로, 불리언으로 변환되면 false입니다.
6. false: 자체가 불리언 타입으로, false의 값을 가집니다.
7. BigInt 타입에서 0n: 큰 정수를 나타내는 BigInt 타입에서 0의 값은 0n으로 표기되며, falsy 값입니다.
이외의 값은 대부분 truthy로 간주되며, 불리언 타입으로 변환할 때 true로 처리됩니다.
'CS | 기술면접대비' 카테고리의 다른 글
#7 HTTP의 보안상 문제점 | arrow function과 function에서 this가 동작하는 방식의 차이 (0) | 2023.06.22 |
---|---|
#6 HTTPS | ES5문법과 ES6문법의 차이 (0) | 2023.06.21 |
#4 프로토콜(Protocol) | 이벤트 위임 (0) | 2023.06.18 |
#3 물리계층(Physical Layer) | Doctype (0) | 2023.06.17 |
#2 데이터 링크 계층(DataLink Layer) | script 태그의 위치 (0) | 2023.06.16 |