코어 포인트
JavaScript에서 임의의 문자 세트를 사용하려면 어휘, 즉 유니 코드 이스케이프 시퀀스 문자열로 정의 된 문자 사전을 생성해야합니다. 캐릭터 세트의 각 캐릭터에는 고유 한 값이 할당되며 카운팅 프로세스는 전체 문자 세트를 가로 지르고 끝에 도달하면 시작으로 되돌립니다.
javaScript에서, 다른 수치 기본화 사이에서 숫자를 구문 분석하고 변환하는 내장 함수는 임의의 문자 세트를 다루기 위해 확장 될 수 있습니다. 이를 통해 그리스어 또는 키릴 문자, 상형 문자 또는 룬과 같은 특이한 캐릭터에서도 비 이례적 인 카디널리티를 계산하고 소수점 숫자를 비 이세 숫자 문자열로 다시 전환 할 수 있습니다.
임의의 문자 세트 계산을 사용하는 개념에는 특히 컴퓨터 과학 및 암호화 분야에서 광범위한 응용 프로그램이 있습니다. 가능한 많은 조합이 가능하여 고유 식별자, 암호화 키 및 보안 비밀번호를 작성하는 데 이상적입니다. 문자가 클수록 문자열이 길수록 잠재적 인 조합이 많을수록 보안이 더 많습니다. -
이 기사는 간단하고 유연한 임의의 캐릭터 세트 계수 기술을 소개합니다. 이 기술은 종종 필요하지 않지만 필요할 때는 JavaScript의 내장 기능이 완전히 처리 할 수 없다는 것을 알게 될 것입니다. JavaScript에는 서로 다른 수치 기본화 사이에서 숫자를 구문 분석하고 변환하기위한 내장 기능이 있습니다. 예를 들어, 방법은 2에서 36 사이의 카디널리티 (수치 카디널리티)를 처리 할 수 있으며 일반적으로 비 사지 카디널리티의 숫자 변환 및 계수에 사용됩니다. 메소드는 변환을 역전시킬 수 있고, 소수점 번호를 비 설명 숫자 문자열로 다시 변환 할 수 있습니다 :
-
그러나 Klingon 번호를 사용하고 싶다면 어떻게해야합니까? 또는 그리스어 또는 키릴 문자, 상형 문자 또는 어떤 종류의 룬을 사용합니까? 내가 보여줄 기술은 이것을 완전히 설명하기 위해 어떤 수치로서, 나는 당신에게 16 진수 (16 진수)를 사용하여 자본 그리스 문자의 몇 가지 예를 보여줄 것이다.
- 용어집은 중요합니다
먼저, 우리는 하나의 유니 코드 탈출 시퀀스로 정의 된 어휘, 우리가 사용할 문자의 사전을 정의해야합니다. 이 경우, 우리는 알파에서 PI에 이르기까지 16 개의 자본 그리스 문자를 가지고 있습니다. 각 숫자는 문자로 표시되며 전체 문자열의 길이는 수치 기반을 결정합니다.
탈출 시퀀스는 문자 parseInt
입니다
유니 코드 이스케이프 시퀀스를 정의하는 데 6 개의 타이핑 문자가 필요하더라도 문자열에서 1 개의 문자로 표시되므로 어휘 길이는 16 자입니다. 어휘가 나면 Number.toString
를 사용하여 숫자 색인 별 문자를 인용하고 그 반대도 마찬가지입니다.
를 사용할 수 있습니다.var character = "2F";
alert(parseInt(character, 16)); // 弹出 47
var number = 47;
alert(number.toString(16)); // 弹出 "2F"
로그인 후 복사
따라서, 우리가 수행하는 모든 계산은 두 가지 방법을 기반으로합니다. 예를 들어, 루프를 정의하고, "κ"반복을 실행하고, 각 문자를 다음 사이에 나열하겠습니다.
그러나 23을 보여주는 문자 등가물과 같은 더 큰 숫자는 어떻습니까? 개별 숫자를 추출한 다음 문자를 동등하게 얻으면됩니다.
를 더 흥미롭게 만들기 위해, 우리가 변환하는 숫자에 16 진수 "2f"와 같은 문자와 숫자가 포함되어 있으면 어떻게 될까요? 이 경우 16 진수 인덱스로 문자를 참조 할 수 없기 때문에 각 숫자를 별도로 변환해야합니다 (예 : var lexicon = "u0391u0392u0393u0394u0395u0396u0397u0398u0399u039au039bu039cu039du039eu039fu03a0";
로그인 후 복사
) : .
물론, 마지막 두 가지 예는 매우 간단합니다. 그러나 숫자의 숫자 수는 알려져 있기 때문에 프로세스를 반복하도록 조정하는 것은 어렵지 않습니다. 필요한 모든 구성 요소가 여기에 제공되며 특정 요구 사항에 따라 조정하십시오.
var number = lexicon.indexOf("u0398"); // "Θ" 的十进制等价物
var character = lexicon.charAt(7); // 7 的字符等价物
로그인 후 복사
데이터는 중요합니다!
원하는 경우 정상적인 라틴어 번호와 문자를 사용하여 계산할 수 있습니다. 용어집의 확장 성은이를 사용하여 JavaScript의 기본 기능을 36보다 큰 카디널리티로 확장하고 당시에 적합한 기호를 사용할 수 있음을 의미합니다. lexicon.charAt("F")
또는 세련된 시계를 개발하십시오! lexicon.charAt(15)
더 알고 싶으십니까? var str = "";
for(var i=0; i<lexicon.indexOf("u039a"); i++) {
str += lexicon.charAt(i);
}
alert(str);
로그인 후 복사
James의 자세한 내용을 읽으려면 Weekly Tech Times 뉴스 레터 기술 시간을 구독하십시오.
모든 문자 세트 (FAQ)에 대한 FAQS (FAQ)
(원본 텍스트에 제공된 FAQ 부분은 여기에 포함되어야하며 길이의 이유로 인해 여기에 생략됩니다)
위 내용은 임의의 문자 세트로 계산의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!