>  기사  >  웹 프론트엔드  >  버퍼 object_node.js의 바이트 길이를 가져오는 Node.js 실용적인 코드 조각

버퍼 object_node.js의 바이트 길이를 가져오는 Node.js 실용적인 코드 조각

WBOY
WBOY원래의
2016-05-16 15:10:261716검색

Node.js 프레임워크의 Buffer 객체가 바이너리 데이터에 대한 우수한 지원을 제공할 수 있다는 것을 알고 있으므로 Buffer 객체의 실제 바이트 길이를 얻는 것은 반드시 사용해야 하는 함수입니다. Node.js 프레임워크는 개발자에게 Buffer.byteLength() 메서드 를 제공합니다. 아래에서는 공식 문서에서 제공하는 루틴을 사용하여 독자에게 이 메서드의 사용을 보여줍니다.

이 예제의 ch04.buffer-byteLength.js의 주요 코드는 다음과 같습니다.

 /**
 * ch04.buffer-byteLength.js
 */
 console.info("------Buffer.byteLength()------");
 console.info();
 str = '\u00bd + \u00bc = \u00be';  //定义字符串
 //½ + ¼ = ¾: 9 characters, 12 bytes
 console.log(str + ": " + str.length + " characters, " + Buffer.byteLength(str, 'utf8') + " bytes");
 console.info();
 console.info("------Buffer.byteLength()------");  

【코드분석】

코드의 06행은 문자열 변수를 정의하고 초기화합니다. 변수 이름은 u00bd + u00bc = u00be입니다. 독자는 관련 웹사이트에 가서 " ½ 문자를 나타내는지 확인할 수 있습니다. ", u00bc는 "¼" 문자를 나타내고 u00be는 "¼" 문자를 나타냅니다. 그러면 08행에서 문자열 변수 str의 길이는 str.length 속성을 인쇄하여 표시되고 해당 문자는 Buffer를 통해 표시됩니다. .byteLength() 메서드 문자열 변수 str의 실제 바이트 길이 Buffer.byteLength() 메서드의 구문은 다음과 같습니다.
구문: Buffer.byteLength(string[, 인코딩])
이 메소드는 문자열 매개변수의 실제 바이트 길이를 나타내는 숫자를 반환합니다. 인코딩 매개변수의 기본값은 "utf8" 인코딩 형식입니다.

그림 4.4의 결과에서 문자열 str의 길이 속성이 9자 길이이고, 점유 바이트 길이가 12임을 알 수 있으므로 "½", "¼", "½"을 알 수 있습니다. 이 세 문자는 실제로 길이가 2바이트를 차지합니다.

팁: 이 섹션에서는 문자와 바이트의 두 개념 사이의 유사점과 차이점을 이해해야 합니다. 컴퓨터 코딩에서 1바이트는 8비트(1바이트 =)를 차지합니다. 8비트) 문자는 단일 바이트 문자 또는 이중 바이트 문자일 수 있습니다. 또한 http 응답 헤더를 작성할 때 Buffer.byteLength() 메서드가 자주 사용됩니다. http 응답 헤더 Cotent-Length를 다시 작성하려면 String.prototype 길이 대신 Buffer.byteLength() 메서드를 사용해야 합니다. 기인하다.

위는 여러분과 공유한 첫 번째 매우 실용적인 Node.js 코드 조각입니다. 아래에는 더 흥미로운 Node.js 코드 조각이 있으니 놓치지 마세요.

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