js 骂人不带脏字 (!(~+[]) + {})[--[~+""][+[]] * [~+[]] + ~~!+[]] + ({} + [])[[~!+[]] * ~+[]] 图解
看到掘金上翻出一个老梗,前端如何不带脏字得骂产品经理傻逼(sb),复制(!(~+[]) + {})[--[~+""][+[]] * [~+[]] + ~~!+[]] + ({} + [])[[~!+[]] * ~+[]]到浏览器控制台回车,看到输出sb二字。
(1)原理很简单,就是取字符串里的字母进行拼凑:
//既然知道原理了 那么也拼凑一个赞美js吧 ({} + [])[--[~+""][+[]] * [~+[]] + ~~!+[]] + (!(~+[]) + {})[--[~+""][+[]] * [~+[]] + ~~!+[]]
(2)来补充下,一个已经写好的插件可以逆向操作,输入文字,返回操作符。
npm i -g zhuangbility //然后运行 zhuangbility 'I LOVE CHINA'