>웹 프론트엔드 >프런트엔드 Q&A >nodejs 유니코드 트랜스코딩

nodejs 유니코드 트랜스코딩

王林
王林원래의
2023-05-08 19:21:091255검색

Node.js 유니코드 트랜스코딩

Node.js의 유니코드 인코딩 및 디코딩이 점점 더 보편화되고 있습니다. 유니코드 시퀀스를 찾는 방법은 많은 일반적인 프로그래밍 언어에 비해 쉽습니다. JavaScript는 내장된 UTF-16 인코딩 메커니즘으로 인해 자연스럽게 유니코드 문자열을 지원합니다. 이 기사에서는 Node.js에서 유니코드 인코딩 및 디코딩을 사용하는 방법을 다룹니다.

유니코드 소개

유니코드는 모든 문자 집합을 포괄하고 고유한 숫자 코드 포인트를 할당하도록 설계된 문자 인코딩입니다. 즉, 유니코드는 일반 문자든 희귀 문자든 관계없이 모든 언어의 거의 모든 문자를 나타내는 데 사용될 수 있습니다. 또한 이모티콘과 다양한 기호도 지원합니다. 유니코드는 16비트 또는 32비트 코드 단위를 사용하여 모든 문자를 코드 포인트라고 하는 숫자로 나타냅니다.

JavaScript에서 유니코드 사용

JavaScript에는 유니코드 지원 기능이 내장되어 있습니다. JavaScript에서는 UTF-16 인코딩 메커니즘이 문자열을 저장하는 데 사용되며 u xxxx 및 u{xxxxx} 구문은 유니코드 코드 포인트(여기서 x는 16진수)를 나타내는 데 허용됩니다. 예를 들어, 다음은 중국어 문자 "中"을 나타내는 유니코드 코드 포인트의 예입니다: u4e2d 및 u{4e2d}.

const str1 = "u4e2d";
const str2 = "u{4e2d}";

console.log(str1); //
console.log(str2)에서 // Node.js에서 작동 중 with Unicode

Node.js에서는 Buffer 객체를 사용하여 유니코드 인코딩 및 디코딩을 처리할 수도 있습니다. 버퍼는 각 요소가 0에서 255 사이의 값을 갖는 부호 없는 정수의 배열로 생각할 수 있지만 toString 메서드를 사용하면 문자열을 유니코드로 디코딩하는 방식으로 내용을 해석할 수 있습니다.

일반적인 요구 사항은 유니코드 문자열을 UTF-8 인코딩의 바이트 배열로 변환하는 것입니다. 이는 Buffer 메소드에 문자열을 전달하여 수행할 수 있습니다:

const str = "Node.js iscool";

const buff = Buffer.from(str, "utf-8")


console.log( buff ); //

마찬가지로 Buffer 개체를 사용하여 UTF-8로 인코딩된 바이트 배열을 해당 유니코드 문자열로 변환할 수 있습니다. 이는 toString 메소드를 사용하고 인코딩을 "utf-8"로 전달하여 수행할 수 있습니다:

const buff = Buffer.from([0x4e, 0x6f, 0x64, 0x65, 0x2e, 0x6a, 0x73, 0x20, 0x69, 0x73, 0x20, 0x63, 0x6f, 0x6f, 0x6c]);

const str = buff.toString("utf-8");


console.log(str); // Node.js는 Node.js에서 멋지네요

또한 UTF-16 인코딩을 사용하기 쉽습니다. 문자열에서 직접 버퍼 방법을 사용하고 인코딩 유형을 "utf-16le" 또는 "ucs2"로 지정할 수 있습니다.

const str = "English";

const buff = Buffer.from(str, "ucs2");


console.log(buff); //

UTF-16으로 인코딩된 바이트 배열을 유니코드 문자열로 변환:

const buff = Buffer.from([0xe4, 0xb8, 0xad, 0xe6, 0x96, 0x87]);

const str = buff.toString("ucs2");


console.log(str); // Chinese

"ucs2" 인코딩을 사용하는 경우 모든 유니코드 코드 포인트가 표시됩니다. 16비트 코드 단위를 사용합니다. 유니코드 코드 포인트가 0xFFFF보다 큰 경우 UTF-16BE 또는 UTF-16LE와 같은 다른 인코딩을 사용해야 합니다.

결론

Node.js에는 유니코드에 대한 지원이 내장되어 있어 유니코드 인코딩 및 디코딩을 간단하고 간단하게 처리할 수 있습니다. JavaScript에 내장된 유니코드 지원을 사용하거나 변환을 위해 Node.js의 Buffer 객체를 사용할 수 있습니다. 어떤 방법을 사용하든 유니코드 시퀀스 작업은 빠르고 쉽습니다.

위 내용은 nodejs 유니코드 트랜스코딩의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:nodejs8.4 설치다음 기사:nodejs8.4 설치