在下面的JavaScript代码中,第一个打印正确的符号(希腊语gamma),而第二个打印字符串'\ u03b8'。
var full_uni='\u03b8';
var part_uni='\\' + 'u03b8';
console.log(full_uni);
console.log(part_uni);
我的问题是
full_uni
打印为'\ u03b8'(或类似)和/或打印part_uni
作为正确的符号?答案 0 :(得分:1)
虽然没有内置的方法可以在它们之间来回转换,但你可以使用它来实现这些功能。
function decodeUnicodeSequence(str) {
return str.replace(/\\u([0-9a-f]{4})/ig,function(_,hex) {
return String.fromCharCode(parseInt(hex,16));
});
}
function encodeUnicodeSequence(str) {
return str.replace(/[\u00a0-\uffff]/g,function(chr) {
return "\\u"+("00"+chr.charCodeAt(0).toString(16)).slice(-4);
});
}