>  기사  >  웹 프론트엔드  >  js를 사용하여 문자열의 바이트 수를 얻는 방법 요약

js를 사용하여 문자열의 바이트 수를 얻는 방법 요약

怪我咯
怪我咯원래의
2017-07-07 10:38:352280검색

이 글은 js에서 문자열바이트를 얻는 방법을 주로 소개합니다. 자바스크립트 문자열길이 계산 관련 스킬을 정리한 예시입니다. 필요하신 분들은 참고하시면 됩니다.

이 글의 예시는

문자열

길이 계산 방법을 알려드립니다. js에서 문자열 바이트를 얻는 방법. 참고할 수 있도록 모든 사람과 공유하세요. 자세한 내용은 다음과 같습니다.

길이를 사용하여 문자열의 길이를 구할 수 있다는 것은 누구나 알고 있습니다.

이 문자열의 바이트 수를 구하는 방법은 무엇일까요?

영문의 길이와 바이트 수는 동일해야 합니다. 둘 다 1

그리고 중국어 길이=1, 바이트 수=2

그래서 해야 할 일은 한자의 바이트 수를 계산하는 것입니다.

방법 1:

alert('a'.replace(/[^\u0000-\u00ff]/g,"aaa").length); 
//原理:把中文字符替换成2个英文字母,那么字节数就是2,
//示例中改成替换成3个英文字母了。
//因此弹出的字节数是3,如果要正确的,当然是替换成2个字母了
//\u0000这个表示的是unicode编码

방법 2:

var str='我我我';
var bytesCount;
for (var i = 0; i < str.length; i++)
{
  var c = str.charAt(i);
  if (/^[\u0000-\u00ff]$/.test(c)) //匹配双字节
  {
  bytesCount += 1;
  }
  else
  {
  bytesCount += 2;
  }
}
alert(bytesCount);
//结果是6
//原理也很简单,用正则判断是不是中文,如果是的话,字节数就加1。
한자의

정규식

일치: [u4e00-u9fa5]

2바이트 문자 일치(한자 포함): [^x0000-x00ff]

문자열 길이를 계산하는 데 사용할 수 있습니다(2바이트 문자 길이는 2로 계산되고 ASCII 문자 길이는 1로 계산됩니다)

JS의 여러 함수:



charAt(num) / /문자열의 num 위치를 가져옵니다.

charCodeAt(num)//문자열의 num 위치에 있는 문자의 유니코드 인코딩을 가져옵니다🎜fromCharCode(num)//유니코드 인코딩에 해당하는 문자를 가져옵니다🎜

위 내용은 js를 사용하여 문자열의 바이트 수를 얻는 방법 요약의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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