유니코드 문자를 표시/복호화하는 Javascript 대응
변환해야 할 유니코드 문자열이 있습니다.\u00f3의 문자열을 o로 렌더링해야 합니다.이것은 예시로, 다른 모든 유형의 문자 ,, í, ...와 함께 발생해야 합니다.
기본 코드는 https://jsfiddle.net/dddf7o70/ 입니다.
변환이 필요하다
<Hello name="Informaci\u00f3n" />
안으로
Información
JS 문자열로 전달합니다.
<Hello name={'Informaci\u00f3n'} />
수동 처리를 할 필요가 없습니다(오류가 발생하기 쉽습니다).
바이올린: https://jsfiddle.net/dddf7o70/5/
만약 당신이 어떤 이유로든 글자 그대로의 글자를 가진 끈으로 작업해야 한다면\u
실제 문자가 아닌 16진수를 사용하여 숫자로 변환한 다음 String.fromCharCode()를 사용하여 해당 숫자를 실제 문자로 변환합니다.여기에는 regexp replace with handler 함수를 사용할 수 있습니다.
// put this in whatever utility library file you have:
export function convertUnicode(input) {
return input.replace(/\\+u([0-9a-fA-F]{4})/g, (a,b) =>
String.fromCharCode(parseInt(b, 16)));
}
다음으로 컴포넌트:
import { convertUnicode } from "...your util lib...";
function Hello(props) {
const name = convertUnicode(props.name);
return <div>Hello {name}</div>;
}
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(<Hello name="Informaci\\u00f3n"/>);
바이올린: https://jsfiddle.net/shdye3pq/
유니코드 쓰기를 입력하려면render()
jsx는 다음 작업을 수행할 수 있습니다.
<div>{'First \u00b7 Second'}</div>
, 또는
<div>{'First ' + String.fromCharCode(183) + ' Second'}</div>
라이브러리 및 기타 글꼴에서 이 작업을 수행할 경우 글꼴을 먼저 가져오고 사용 중인지 확인하십시오.font-family: myFont
(즉,"Font Awesome 5 Free"
사용하시는 Unicode 가 정확한 것을 확인해 주세요.
질문 제목은 유니코드 문제에 대한 이 질문으로 이어지며, 경우에 따라서는 간단히 다음과 같은 질문으로 이어집니다.meta
태그가 필요합니다.
<html>
<head>
<meta charset="UTF-8">
</head>
</html>
언급URL : https://stackoverflow.com/questions/35166758/react-javascript-displaying-decoding-unicode-characters
'programing' 카테고리의 다른 글
React 18 TypeScript 자녀 FC (0) | 2023.03.31 |
---|---|
배포 시 Amazon Beanstalk 오류 (0) | 2023.03.31 |
인젝터가 이미 생성되었습니다.모듈을 등록할 수 없습니다. (0) | 2023.03.31 |
데이터베이스에서 스프링 부팅 앱 속성 로드 (0) | 2023.03.31 |
Facebook을 WordPress 등록/로그인에 통합하는 방법 (0) | 2023.03.31 |