U+1F1E6のコードの場合、
+ U+1F604(コードの赤字のところのみ)
出力結果:😄
var x; var s; var a; //上位サロゲート var b; //下位サロゲート x = 0x20B9F; //文字コードをセット x -= 0x10000; a = Math.floor(x / 0x400); //Math.floor()で整数値に変換 a += 0xD800; b = x % 0x400; b += 0xDC00; s = String.fromCharCode(a,b); alert(s);
str.charCodeAt(0);
55357str.charCodeAt(1);
56836
unicodeの0x以下5文字を10進法にしたもので表示される。
おまけ:国旗絵文字の範囲検証