簡體   English   中英

gitmoji 的 Unicode

[英]Unicodes for gitmoji

我正在審查他們作者做了這樣的事情的代碼

const emojis: Array<Icon | undefined> | undefined = emojiSet
  .map((emoji) => {
    if (emoji.name && emoji.unified) {
      const codePoints = emoji.unified
        .split("-")
        .map((token) => Number("0x" + token));
        
      return {
        name: emoji.name,
        value: String.fromCodePoint(...codePoints),
        index: emoji.unified,
      };
    }
    return undefined;
  })
  .filter(Boolean);

為了理解代碼,我瀏覽了這個repo (這是上面用來迭代 json 的內容)

這里,在示例中統一是"unified": "261D-FE0F",

當他這樣做時,

   const codePoints = emoji.unified
        .split("-")
        .map((token) => Number("0x" + token));

他正在迭代261D-FE0F並將其映射到 number .map((token) => Number("0x" + token));

[問題]這里我不明白他為什么要在數字上加上“牛”? 我們如何使用 unicode 確定這將是表情符號?

這是來自 wiki 的unicdoe 塊(如果它無論如何都與我的問題相關聯)

因為數字是十六進制的。 0x是用於表示十六進制數字的前綴。 Number("261D")NaN ,但Number("0x261D")是 9757。

JavaScript 中可用的其他前綴是0b (二進制,例如0b11是 3)和0o (八進制,例如0o11是 9)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM