上周的时候,朋友圈的直升飞机不知道为什么就火了,很多朋友开着各种花式飞机带着起飞。
还没来得及了解咋回事来着,这个直升飞机就🔥到的微博热搜。
后面越来越多人开来他们的直升飞机,盘旋在朋友圈上方。于是很多朋友开来他们的坦克,专打直升飞机,一轰一个准。
好了,说回正题!
程序员朋友应该都很熟悉 Unicode (万国码),它几乎包含世界上所有符号,比如组成直升飞机这几个特殊符号对应的 Unicode 码分别为:
ps:推荐一个网站,可以根据符号搜对应的 Unicode 码:https://unicode.yunser.com/unicode
除了这些正常字符以外,Unicode 还包含着各种各样的奇葩字符。
奇葩字符
除了正常的我们熟知的文字以外,Unicode 中还有一些奇怪的文字,比如下面这些文字
除了这些奇怪文字以外,Unicode 还有一些奇葩的的符号。
例如下面一整套麻将牌:
一整套的扑克牌:
一整套国际象棋:
除了这些,通过组合符合,我们还可以造出各种各样的颜文字(๑•̀ㅂ•́)و✧、
另外 Unicode 还收录着我们常用的 Emoji 。
除了这些之外,Unicode 中还有一些特殊字符的,利用这些字符,我们还可以玩出很多有趣的骚操作。
组合字符
Unicode 有一类字符称为组合字符,它可以附加在前一个非组合字符上,从而使整体看起来像是一个字符。
组合字符原来目的是为了解决一些地区语言、文字特殊的需要,比如说泰文声调符号与母音符号。
正常使用的情况下,这些组合字符数量都会有一些限制。但是在 Unicode 组合字符设计上,并没有加这种限制,这样使我们可以无限加这类组合字符。
利用这个特性,可以达到一些恶搞效果,比如「击穿天花板」与「凿穿地板」的效果。
上面实现原理其是利用以下两个组合字符:
只要复制这两个字符相应的 HTML 代码,跟在正常的字符后面,就可以使这两个字符附加在普通字符上,比如下面实现效果为
黑̮̑
Unicode 码值通常使用
U+N
(16 进制N 代表码值),比如 A 的码值为 U+0041。在 HTML 中 Unicode 可以使用
&#N;
(十进制,N 代表码值)表示在 JS 中 Unicode 中需要使用]
\uN
(16 进制N 代表码值)表示
只要我们在普通字符多复制几个这类附加字符,就可以形成上述「击穿」效果。
还记得上面说的泰文吗,曾经有一段时间贴吧,很流行一种喷射文,比如下面的效果。